From c277395642dfe5958520e66f39599035a342114d Mon Sep 17 00:00:00 2001 From: TrillGates Date: Tue, 1 Jun 2021 18:10:29 +0800 Subject: [PATCH] adjust ui. --- .../ic/sport/adapter/PedRecordAdapter.java | 6 +-- .../com/ic/sport/adapter/PedSetupAdapter.java | 25 +++++----- .../fragment/pedometer/PedMainFragment.java | 2 +- .../fragment/pedometer/PedRecordFragment.java | 14 +++--- .../pedometer/PedSetupDialogFragment.java | 10 ++-- .../fragment/pedometer/PedSetupFragment.java | 19 +++++--- .../sport/presenter/PedometerPresenter.java | 29 ++++++------ .../com/ic/sport/widget/picker/WheelView.java | 21 ++++----- .../main/res/layout/activity_pedometer.xml | 1 + .../res/layout/dialog_ped_setup_layout.xml | 44 +++++++++--------- app/src/main/res/layout/fragment_ped_main.xml | 2 +- .../main/res/layout/fragment_ped_record.xml | 11 +++-- .../main/res/layout/fragment_ped_setup.xml | 11 ++--- .../main/res/layout/item_indicator_layout.xml | 4 +- app/src/main/res/layout/item_ped_record.xml | 35 +++++++------- app/src/main/res/layout/item_ped_setup.xml | 12 ++--- .../res/layout/widget_image_text_layout.xml | 17 ++++--- app/src/main/res/mipmap-mdpi/calorie.png | Bin 0 -> 1518 bytes app/src/main/res/mipmap-mdpi/flag.png | Bin 0 -> 2929 bytes app/src/main/res/mipmap-mdpi/ic_cancel.png | Bin 2563 -> 4320 bytes app/src/main/res/mipmap-mdpi/ic_ok.png | Bin 2994 -> 4022 bytes app/src/main/res/mipmap-mdpi/map.png | Bin 0 -> 1395 bytes app/src/main/res/mipmap-mdpi/step.png | Bin 0 -> 2016 bytes app/src/main/res/mipmap-mdpi/tall.png | Bin 0 -> 2010 bytes app/src/main/res/mipmap-mdpi/weight.png | Bin 0 -> 4296 bytes app/src/main/res/values/colors.xml | 1 + 26 files changed, 143 insertions(+), 121 deletions(-) create mode 100644 app/src/main/res/mipmap-mdpi/calorie.png create mode 100644 app/src/main/res/mipmap-mdpi/flag.png create mode 100644 app/src/main/res/mipmap-mdpi/map.png create mode 100644 app/src/main/res/mipmap-mdpi/step.png create mode 100644 app/src/main/res/mipmap-mdpi/tall.png create mode 100644 app/src/main/res/mipmap-mdpi/weight.png diff --git a/app/src/main/java/com/ic/sport/adapter/PedRecordAdapter.java b/app/src/main/java/com/ic/sport/adapter/PedRecordAdapter.java index 985b879..c48ce5b 100644 --- a/app/src/main/java/com/ic/sport/adapter/PedRecordAdapter.java +++ b/app/src/main/java/com/ic/sport/adapter/PedRecordAdapter.java @@ -60,15 +60,15 @@ public class PedRecordAdapter extends RecyclerView.Adapter records) { - setupAdapte.updatePedRecordList(records); + setupAdapter.updatePedRecordList(records); //移动到第一个位置上 mSetupRv.scrollToPosition(records.size() - 1); } private void initRecyclerView() { - setupAdapte = new PedRecordAdapter(mContext); + setupAdapter = new PedRecordAdapter(mContext); LinearLayoutManager mLayoutManager = new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, true); mSetupRv.setLayoutManager(mLayoutManager); - mSetupRv.setAdapter(setupAdapte); + mSetupRv.setAdapter(setupAdapter); } } diff --git a/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupDialogFragment.java b/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupDialogFragment.java index ea08c99..2227247 100644 --- a/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupDialogFragment.java +++ b/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupDialogFragment.java @@ -9,6 +9,7 @@ import android.view.View; import android.view.ViewGroup; import android.view.Window; import android.widget.ImageButton; +import android.widget.ImageView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -85,14 +86,17 @@ public class PedSetupDialogFragment extends DialogFragment { View popView = inflater.inflate(R.layout.dialog_ped_setup_layout, container); numberPicker = (WheelView) popView.findViewById(R.id.dialog_value_picker); - setNumberPicker(limil.get(mCurrType)[0], limil.get(mCurrType)[1], UNIT_RES[mCurrType], VALUE_CURR[mCurrType]); + setNumberPicker(limil.get(mCurrType)[0], + limil.get(mCurrType)[1], + UNIT_RES[mCurrType], + VALUE_CURR[mCurrType]); - ImageButton bt = (ImageButton) popView.findViewById(R.id.dialog_picker_ok); + ImageView bt = (ImageView) popView.findViewById(R.id.dialog_picker_ok); bt.setOnClickListener(v -> { mListener.onDialogUpdate(mCurrType,limil.get(mCurrType)[0]+numberPicker.getCurrentItem()); dismiss(); }); - ImageButton cancel = (ImageButton) popView.findViewById(R.id.dialog_picker_cancel); + ImageView cancel = (ImageView) popView.findViewById(R.id.dialog_picker_cancel); cancel.setOnClickListener(v -> dismiss()); return popView; diff --git a/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupFragment.java b/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupFragment.java index 07ee5e3..e9f6a45 100644 --- a/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupFragment.java +++ b/app/src/main/java/com/ic/sport/fragment/pedometer/PedSetupFragment.java @@ -1,6 +1,7 @@ package com.ic.sport.fragment.pedometer; import android.content.Context; +import android.graphics.Rect; import android.os.Bundle; import androidx.annotation.NonNull; @@ -17,11 +18,11 @@ import com.ic.sport.R; import com.ic.sport.adapter.PedSetupAdapter; -public class PedSetupFragment extends Fragment{ +public class PedSetupFragment extends Fragment { private static final String TAG = "PedSetupFragment"; - public interface OnPedSetupItemClickListener{ + public interface OnPedSetupItemClickListener { void onPedSetupItem(int pos); } @@ -60,14 +61,20 @@ public class PedSetupFragment extends Fragment{ } private void initRecyclerView() { - setupAdapter = new PedSetupAdapter(mContext,listener); + setupAdapter = new PedSetupAdapter(mContext, listener); LinearLayoutManager mLayoutManager = new LinearLayoutManager(mContext, LinearLayoutManager.VERTICAL, false); mSetupRv.setLayoutManager(mLayoutManager); + mSetupRv.addItemDecoration(new RecyclerView.ItemDecoration() { + @Override + public void getItemOffsets(@NonNull Rect outRect, @NonNull View view, @NonNull RecyclerView parent, @NonNull RecyclerView.State state) { + outRect.bottom = 5; + } + }); mSetupRv.setAdapter(setupAdapter); } private OnPedSetupItemClickListener listener = pos -> { - if(pos == 2){ + if (pos == 2) { return; } FragmentManager fm = getChildFragmentManager(); @@ -75,8 +82,8 @@ public class PedSetupFragment extends Fragment{ alertDialog.show(fm, "PedSetupDialog"); }; - public void updateSetuUpValue(int type,int value){ - setupAdapter.notifyUpdateValue(type,value); + public void updateSetuUpValue(int type, int value) { + setupAdapter.notifyUpdateValue(type, value); } } diff --git a/app/src/main/java/com/ic/sport/presenter/PedometerPresenter.java b/app/src/main/java/com/ic/sport/presenter/PedometerPresenter.java index f7cc78f..8ad6d49 100644 --- a/app/src/main/java/com/ic/sport/presenter/PedometerPresenter.java +++ b/app/src/main/java/com/ic/sport/presenter/PedometerPresenter.java @@ -25,8 +25,8 @@ public class PedometerPresenter { private MutableLiveData mObsPedCount; private MutableLiveData> mObsPedRecord; - public PedometerPresenter(Context context){ - mContext=context; + public PedometerPresenter(Context context) { + mContext = context; mObsPedCount = new MutableLiveData<>(); mObsPedRecord = new MutableLiveData<>(); } @@ -39,20 +39,20 @@ public class PedometerPresenter { return mObsPedRecord; } - public void bindService(){ + public void bindService() { ServiceUtil.bindServiceUtil(mContext, "com.ic.action.WORK_SERVICE", - connection,mContext.getPackageName(), 103); + connection, mContext.getPackageName(), 103); } - public void unbindService(){ + public void unbindService() { try { mService.unregisterCallback(pedInterface); - ServiceUtil.unBindServiceUtil(mContext,connection); + ServiceUtil.unBindServiceUtil(mContext, connection); } catch (Exception e) { - IcLog.e(TAG,"unbindService"); - }finally { - mService=null; - pedInterface=null; + IcLog.e(TAG, "unbindService"); + } finally { + mService = null; + pedInterface = null; } } @@ -76,7 +76,7 @@ public class PedometerPresenter { } } - public void syncPedHeightSetting(int height){ + public void syncPedHeightSetting(int height) { if (mService != null) { try { mService.syncPedHeightSetting(height); @@ -86,7 +86,7 @@ public class PedometerPresenter { } } - public void syncPedWeightSetting(int weight){ + public void syncPedWeightSetting(int weight) { if (mService != null) { try { mService.syncPedWeightSetting(weight); @@ -111,17 +111,18 @@ public class PedometerPresenter { @Override public void onServiceDisconnected(ComponentName name) { + } }; private IPedAidlInterface.Stub pedInterface = new IPedAidlInterface.Stub() { @Override - public void updatePedCount(int count) throws RemoteException { + public void updatePedCount(int count) { mObsPedCount.postValue(count); } @Override - public void updatePedRecord(List record) throws RemoteException { + public void updatePedRecord(List record) { mObsPedRecord.postValue(record); } }; diff --git a/app/src/main/java/com/ic/sport/widget/picker/WheelView.java b/app/src/main/java/com/ic/sport/widget/picker/WheelView.java index a75eb11..651957a 100644 --- a/app/src/main/java/com/ic/sport/widget/picker/WheelView.java +++ b/app/src/main/java/com/ic/sport/widget/picker/WheelView.java @@ -21,6 +21,7 @@ package com.ic.sport.widget.picker; import android.content.Context; import android.graphics.Canvas; +import android.graphics.Color; import android.graphics.Paint; import android.graphics.Rect; import android.graphics.drawable.Drawable; @@ -65,13 +66,13 @@ public class WheelView extends View { * Current value & label text color */ // private static final int VALUE_TEXT_COLOR = 0xF0000000; - private static final int VALUE_TEXT_COLOR = 0xFFFFA70D; + private static final int VALUE_TEXT_COLOR = Color.parseColor("#2492F0"); /** * Items text color */ // private static final int ITEMS_TEXT_COLOR = 0xFF000000; - private static final int ITEMS_TEXT_COLOR = 0xFFA9A9A9; + private static final int ITEMS_TEXT_COLOR = Color.parseColor("#B1B1B1"); /** * Top and bottom shadows colors @@ -160,8 +161,8 @@ public class WheelView extends View { boolean isCyclic = false; // Listeners - private List changingListeners = new LinkedList(); - private List scrollingListeners = new LinkedList(); + private List changingListeners = new LinkedList<>(); + private List scrollingListeners = new LinkedList<>(); /** * Constructor @@ -716,11 +717,11 @@ public class WheelView extends View { height = getDesiredHeight(itemsLayout); if (heightMode == MeasureSpec.AT_MOST) { - height = Math.min(height, heightSize); + height = Math.max(height, heightSize); } } - setMeasuredDimension(width, height); + setMeasuredDimension(width, heightMeasureSpec); } @Override @@ -771,7 +772,7 @@ public class WheelView extends View { valuePaint.setColor(VALUE_TEXT_COLOR); valuePaint.drawableState = getDrawableState(); - labelPaint.setColor(ITEMS_TEXT_COLOR); + labelPaint.setColor(Color.parseColor("#E6E6E6")); labelPaint.drawableState = getDrawableState(); Rect bounds = new Rect(); @@ -780,11 +781,9 @@ public class WheelView extends View { // draw label if (labelLayout != null) { canvas.save(); -// canvas.translate(itemsLayout.getWidth() + LABEL_OFFSET, -// bounds.top + ((bounds.height() - labelLayout.getHeight()) / 2)); // 确保 Label 与 Value 中线对齐 - canvas.translate(itemsLayout.getWidth() + LABEL_OFFSET, - baseLine - (labelLayout.getHeight()/2)); + canvas.translate(itemsLayout.getWidth(), + baseLine - (labelLayout.getHeight()) + 8); labelLayout.draw(canvas); canvas.restore(); } diff --git a/app/src/main/res/layout/activity_pedometer.xml b/app/src/main/res/layout/activity_pedometer.xml index cfd5b7f..f3c0bbf 100644 --- a/app/src/main/res/layout/activity_pedometer.xml +++ b/app/src/main/res/layout/activity_pedometer.xml @@ -17,5 +17,6 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="bottom|center_horizontal" + android:layout_marginBottom="5dp" android:overScrollMode="never" /> \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_ped_setup_layout.xml b/app/src/main/res/layout/dialog_ped_setup_layout.xml index 19cfc56..2323b15 100644 --- a/app/src/main/res/layout/dialog_ped_setup_layout.xml +++ b/app/src/main/res/layout/dialog_ped_setup_layout.xml @@ -1,50 +1,50 @@ - + android:layout_height="match_parent" + android:layout_gravity="center"> + android:layout_height="260dp" + android:layout_gravity="center" + android:layout_marginLeft="26dp" /> - + android:src="@mipmap/ic_cancel" /> - + android:src="@mipmap/ic_ok" /> - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_ped_main.xml b/app/src/main/res/layout/fragment_ped_main.xml index 03fc7bb..6cf06a0 100644 --- a/app/src/main/res/layout/fragment_ped_main.xml +++ b/app/src/main/res/layout/fragment_ped_main.xml @@ -28,7 +28,7 @@ app:isClockwise="true" app:isDecimal="true" app:isShowPercentText="false" - app:maxProgress="1000" + app:maxProgress="10000" app:neiYuanColor="@color/transparent" app:progress="1000" app:ringColor="@color/top_color2" diff --git a/app/src/main/res/layout/fragment_ped_record.xml b/app/src/main/res/layout/fragment_ped_record.xml index cdff5c3..0dd1d25 100644 --- a/app/src/main/res/layout/fragment_ped_record.xml +++ b/app/src/main/res/layout/fragment_ped_record.xml @@ -3,7 +3,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@mipmap/qs_background" + android:background="@mipmap/bg" android:gravity="center_horizontal" android:orientation="vertical" tools:context=".fragment.pedometer.PedRecordFragment"> @@ -11,14 +11,15 @@ + android:textColor="@color/main_text_color" + android:textSize="42sp" /> + android:layout_marginTop="10dp" /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_ped_setup.xml b/app/src/main/res/layout/fragment_ped_setup.xml index 384fdfa..d21e029 100644 --- a/app/src/main/res/layout/fragment_ped_setup.xml +++ b/app/src/main/res/layout/fragment_ped_setup.xml @@ -3,7 +3,7 @@ xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" - android:background="@mipmap/qs_background" + android:background="@mipmap/bg" android:gravity="center_horizontal" android:orientation="vertical" tools:context=".fragment.pedometer.PedSetupFragment"> @@ -11,15 +11,14 @@ + android:textColor="@color/main_text_color" + android:textSize="42sp" /> + android:overScrollMode="never" /> \ No newline at end of file diff --git a/app/src/main/res/layout/item_indicator_layout.xml b/app/src/main/res/layout/item_indicator_layout.xml index 8ca6c6d..94225bf 100644 --- a/app/src/main/res/layout/item_indicator_layout.xml +++ b/app/src/main/res/layout/item_indicator_layout.xml @@ -10,7 +10,9 @@ + android:layout_height="wrap_content" + android:layout_marginLeft="5dp" + android:layout_marginRight="5dp"> + android:layout_height="140dp" + android:layout_marginStart="5dp" + android:layout_marginEnd="5dp" + app:cardBackgroundColor="#303233" + app:cardCornerRadius="5dp"> + android:layout_marginStart="15dp" + android:layout_marginTop="20dp" + android:text="@{recordDate}" + android:textColor="@color/white" /> + icApp:widgetImageValue="@{recordCalories}" /> + icApp:widgetImageValue="@{recordDistance}" /> diff --git a/app/src/main/res/layout/item_ped_setup.xml b/app/src/main/res/layout/item_ped_setup.xml index 7541dde..cb1f69d 100644 --- a/app/src/main/res/layout/item_ped_setup.xml +++ b/app/src/main/res/layout/item_ped_setup.xml @@ -45,24 +45,24 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@{setupItemTitle}" - android:textColor="#50FFFFFF" - android:textSize="36sp" + android:textColor="@color/white" + android:textSize="30sp" android:layout_marginStart="5dp"/> diff --git a/app/src/main/res/layout/widget_image_text_layout.xml b/app/src/main/res/layout/widget_image_text_layout.xml index cab81c0..8347291 100644 --- a/app/src/main/res/layout/widget_image_text_layout.xml +++ b/app/src/main/res/layout/widget_image_text_layout.xml @@ -1,22 +1,25 @@ + android:layout_height="wrap_content" + android:gravity="center_vertical" + android:orientation="horizontal"> + android:layout_height="wrap_content" /> + style="@style/RecordTextStyle" + android:layout_marginStart="2dp" + android:textColor="@color/white" /> + style="@style/RecordTextStyle" + android:layout_marginStart="2dp" + android:textColor="@color/white" /> \ No newline at end of file diff --git a/app/src/main/res/mipmap-mdpi/calorie.png b/app/src/main/res/mipmap-mdpi/calorie.png new file mode 100644 index 0000000000000000000000000000000000000000..683af49e84956f7db0fb02eff78f04752615e0d6 GIT binary patch literal 1518 zcmVL%Q1p)%ff~Xj0XfhOhOmI9l#>hq(xKQG@c5Jony~o_*aF1^H(RMnr`&ZN7Ip5#; zob&tr?yskWJM5u5j0ZzN|M!XxRcNR}Ju+~8!?RH_WZD35QuxN=ykIA2K$o27)#s;+ z#JdT&2S7vk>)VnCEs*P#)oVx)wgNEvAQ%ndo8B3mK&}^yib=rQuGL^hqiM_giG!{} z9qU$YCZd=81@360=(z3M+ky!d(mnLo3o92g@xDF-mc++R#XFA<3LwXd{MccUk<|pm z_7yOL_L+-!u%pziy|PvBm!SIUgqUV1uMP$5}z^#ui{_(-+`h*Aucan_0U zthnt5g0h!_0@P8ococbriKdTsep1cF8&`DM#>MqokM$DjSK7fLsfBR?nB7-l{JLQ3c4l7yL2pYAVje=2VQ z1UjHAC`KCzSZyxZ|A`)d-9YV2=kEoCMcpUmEfKpuf4OzZlPSX}?4q84{`HZznXml0 zPV2tX1>{;h_b~}VuNNW%EpCY)uql?2)q5D);8cz4A9!%NlbXa;gFn3F9KjwwyR63R)y3?(~N<1DR;Joxp8 zYHT$F-JJi#4ggQ95f7G)yp%msd$P66rg)@l2bw!uz5(=kKMNK_PaR@j8*%vCx0UoY z0Xb%6j~Bv*RV#^xVw`~Ekw?CprlhS2$T|DbMI>Oal4wZA8D4vb7@cghx%$)B1axy& z_If6IGb9145EVtviYd393?9&oN8V*%wTihzVj?l;TE4F+3mQ;c_LLGPDhNrmDnyy3 zWft3yrNIN5KDmT}{|-o!mRTxJ1`%k=!<(7lx8b28!E)=WhFHpHK{%z#zK0PrrdfXY z>3Hxel$E)Lfo-~i0kr{QrsYIsjdOCQ9jyIb#%^hZrLyuy(14mB%E&ed2E}WSzX=Jv zG5Y7Ixm1VBnlb6pzN)?M;Dzboz!2C>X)%(HH{KleK~L8LH4gW?Ro(Llx4KwSn~c8&iwz UMC%c*J^%m!07*qoM6N<$f~0)p1poj5 literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/flag.png b/app/src/main/res/mipmap-mdpi/flag.png new file mode 100644 index 0000000000000000000000000000000000000000..17896e97c50b071121fb47f8c8bc4ee5fcb45def GIT binary patch literal 2929 zcmV-%3y$=OP)Wcx-Vl1|@zn^RPXy+Uubh22NzxCIq_anFT=8a^V*;jvD?IkVd?K-s z5f3HAjdD8uzY&854>|aDkfaNX-eq~2&8sF45dn+dx*3sg+DF=5oeyjns0MQD;>8^u zovr6`054>uW5&HX$f@9pJG~3xfq48>iRf|b_6;NR;;;~p8O9V2Irv3DJjyb*Q4kG~ z8WR2k2sbjoo4}YQLRpuj`9Qb`iH^3X2;*i}gQzp6LMuH4s4B|+fOyu(-Dl>PBSI`R z-VYsg&`MpxZ<=|{%5M&D9Laf;4(Ce!j^@pxhuiX~Ezeeis3WIBD_42vfdxgmixJPW zhmWRdvu9?r>A?jH&ftKwZZz)|7m2zjpnYgp;+41H5B5Q?IJLuZvg)Qh!;D;nE8kyq@Kqnu&>o-D+#7@(yv zcg_GHb<`hX5q!mdCjpTW`~jGYMnl2YR%1WfRw`!z{vJuEPcTC~nOqA*XI3@V@{%G5 ztKcqIX{v^E{UEZ0{s1&{ouWL-h@Z0MK@En6y5&M4uO<=~gCrSYUcqC^Ldy-rF`-!> zh-L_{Ugv!XTL3R(#G4$eG4q$gLfpMGkx+(_wlJB3UlT#JdAu<%hE!;cPXKqtVsrPj zv^bPwWL^~(!rUtt;>tgn@M!yL?95$$d7=#>=&8_}_5OIEmFo<(_`|j^-X0dB+Ymkr z@%T>}=||;aLPdzB1;9m4tP=7QTUbWMVV?mi$}&K_(jLa7X~%bFv(FCp^c<%L0?(Ne zQ(58c3B4o7D$|`!_E{PKDM!=3fXi zfTSjq0|*edh4Cx05J#GMuqSp06JAg{G%DMZRxEt$9nRx2u#iZc&tpZ_OXN)E_i8vC zf#8g-fG9O3M8gBuKj~ix8&C%0@%?q8KD)?@%nyf!IK%YNXw0b}*3A=b$CK60S<1J4 z<(|lVM(B|Z4?A-BIByzuu&ye~^MH7)Ef4O@3o-KmfZc`YtRFDKQpdcS03sr0_wLdT zjr8`az60EzOkP6(KQG&rd^#+|Bl(`5Bax(kkC|lUClZ`FvEs>Ed08|8PaGXn1LV`& zAMZ7fWZk|R=7ITm{3w*97abGP^_yi&WL0CacL8vAQ$Qrp0pX(dC!e{)Ex3_(4FhNl zkXMupBF1fDJSwurVmCA3B^4*^p(i5I`^fm^Q13H;o+v!CkeJLxZm&@lWvs}$ckkg{ zeSQBabjKF4gzKyJHED=rRpybRz5G!UB-o6ApA9|zyyG~+t$hs#n2*O(C`ryc%Y2nA z#4-k$QHagT+x5fxg>&^M5{eLE4LdI+j%0U8ri73DENJk6E|OCoC_I_nBX zxZwj0r~x7(?PP>rBDyEkKXAWsR{eqFO`t(TJ1uO;L zay8$vN1DS-P(Yv^=60=EIOl;V3yALm;v037%JcZ0JA<^5N+3dDS*jx8Y8V=CRb;;!GTt#Hf$70J7 z@H>?(W9HY1^=mu(`~QRhH6{DHle0SX1fZ%YzXrtb+KtdP?f9;2_E|L={RALAS#BT$ zFO_q-pCQ1$Mj2m^emwy=q$nq8)kW4;H5%KBh@GPb@l|pzx2zrpHo6Z_02(4|A(=GJ zj4O()YESGwAUxYNR_FWW{@mvpZFs%<_XMDo2k&LO$jZ#E%(M5)WP}=xUIa+D8F_B+ zzTtV@+qS(|F9RFhk7oe$iNpm+*Ry}m01m}s z-C7`!bBL?}4~5g|#b&)2o%Ireex2OcXB-DinU`k(4I-+dYy`w(M(8l}PSp}w^U>&1 z(6qlqwrzWA%Ft`H8dDBJO(w5_u_EiDun><9c67|7V6dfq>(<;fz$ygPc>E(ENiW#{ z&CI`x2yxj|f@Ytqry*?Sx@0ng040%?nYTo&Ct0T=M9%@LigF7ee%%gB8Xi8ZBbR$^ z8lVdT`DF4l2=IWTsU@W~5UQg57Z4A&h4DaGh@Odlgx_!2zIdQn4<-`Jk;tJ$lcs&FGn;+R zZzvNP-%o%iBhg>WCVQ=%PG3C{1N?658$bpK6p~4!oUx0nFU!`~1^5ld?fAX{w91+L z04*ij_yaR*%(G`^GQzC^ez)@#U=@+|8*(Odi{D_}j_)hLp=h*6YiW7U@pSv_eMAGR4+#2C$yQToBD$1>Z_%%BSX?Xb1j$E$hueob9+@=7S zSClgmajo50(zGi(v)Sd122gANO##pnS+@f~OUWSSr(_{cs@1?oU*8k}&0R?{`2+x* zY6CbWMAoJOSWuM9xlCjQP5Yvp%{KLu3QYr0?dh2hZEc(EA;$oBMbhaD8XbnU^xrf9 zEpg!uKpcJCmwA&c#DTRK*ywAU3SeGQeu9WUw&lTIS%{Mx4WX9)n+jky9^Y>U(JDkd z696`|uAddjWX66du@;N#d~H(!9I?%K6s|p&+l~NQo$alAcTEYf?p8Li!)bsu!kq?K bBf$Ry>*lR~|1ZMs00000NkvXXu0mjfNcwST literal 0 HcmV?d00001 diff --git a/app/src/main/res/mipmap-mdpi/ic_cancel.png b/app/src/main/res/mipmap-mdpi/ic_cancel.png index 29a4bc8f34d8cee64a10f7a85ca8fa7e6f9383ab..dfb6992c7b918a38313b7504652334752eed4c9f 100644 GIT binary patch literal 4320 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 OWlV+#{fhIJxc>kF%rq|m diff --git a/app/src/main/res/mipmap-mdpi/ic_ok.png b/app/src/main/res/mipmap-mdpi/ic_ok.png index 5001e5792df4372ae0076556aac98ad3c5182adc..0e725787829fc05630059d0338543798a75cfebc 100644 GIT binary patch literal 4022 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 literal 2994 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 yw;V33fDJw7Lht`7=pFfJ+r<%LyAW=@-T#t% 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 #E6F9F7 #50000000 + #2492F0 #06C1AE -- 2.17.1