From c9bc9987a73ff8e9681a79fa1dc15318dfebb299 Mon Sep 17 00:00:00 2001 From: Fankesyooni Date: Mon, 31 Jan 2022 00:42:33 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=80=9A=E7=9F=A5=E5=9B=BE?= =?UTF-8?q?=E6=A0=87=E4=BC=98=E5=8C=96=E5=90=8D=E5=8D=95=E5=8A=9F=E8=83=BD?= =?UTF-8?q?=E5=B9=B6=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81=E5=92=8C=E7=9B=B8?= =?UTF-8?q?=E5=85=B3=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/misc.xml | 1 + .../miui/notify/ui/ConfigureActivity.kt | 60 +++++++++++++++ app/src/main/res/layout/activity_config.xml | 42 +++++++++- app/src/main/res/layout/adapter_config.xml | 72 ++++++++++++++++++ app/src/main/res/mipmap-xxhdpi/back.png | Bin 0 -> 3633 bytes app/src/main/res/values/colors.xml | 1 + 6 files changed, 175 insertions(+), 1 deletion(-) create mode 100644 app/src/main/res/layout/adapter_config.xml create mode 100644 app/src/main/res/mipmap-xxhdpi/back.png diff --git a/.idea/misc.xml b/.idea/misc.xml index 4ef2cb8..d22d7e5 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -10,6 +10,7 @@ + diff --git a/app/src/main/java/com/fankes/miui/notify/ui/ConfigureActivity.kt b/app/src/main/java/com/fankes/miui/notify/ui/ConfigureActivity.kt index 7a77716..b9bec43 100644 --- a/app/src/main/java/com/fankes/miui/notify/ui/ConfigureActivity.kt +++ b/app/src/main/java/com/fankes/miui/notify/ui/ConfigureActivity.kt @@ -18,12 +18,23 @@ * * This file is Created by fankes on 2022/01/30. */ +@file:Suppress("SetTextI18n", "InflateParams") + package com.fankes.miui.notify.ui import android.os.Bundle +import android.view.LayoutInflater import android.view.View +import android.view.ViewGroup +import android.widget.BaseAdapter +import android.widget.ListView +import android.widget.TextView +import androidx.constraintlayout.utils.widget.ImageFilterView import com.fankes.miui.notify.R +import com.fankes.miui.notify.hook.HookMedium +import com.fankes.miui.notify.params.IconPackParams import com.fankes.miui.notify.ui.base.BaseActivity +import com.fankes.miui.notify.view.MaterialSwitch class ConfigureActivity : BaseActivity() { @@ -32,5 +43,54 @@ class ConfigureActivity : BaseActivity() { setContentView(R.layout.activity_config) /** 返回按钮点击事件 */ findViewById(R.id.title_back_icon).setOnClickListener { onBackPressed() } + /** 设置列表元素和 Adapter */ + findViewById(R.id.config_list_view).apply { + adapter = object : BaseAdapter() { + + private val inflater = LayoutInflater.from(context) + + override fun getCount() = IconPackParams.iconDatas.size + + override fun getItem(position: Int) = IconPackParams.iconDatas[position] + + override fun getItemId(position: Int) = position.toLong() + + override fun getView(position: Int, convertView: View?, parent: ViewGroup?): View { + var cView = convertView + val holder: ViewHolder + if (convertView == null) { + holder = ViewHolder() + cView = inflater.inflate(R.layout.adapter_config, null).also { + holder.appIcon = it.findViewById(R.id.adp_app_icon) + holder.appName = it.findViewById(R.id.adp_app_name) + holder.pkgName = it.findViewById(R.id.adp_app_pkg_name) + holder.cbrName = it.findViewById(R.id.adp_cbr_name) + holder.switch = it.findViewById(R.id.adp_app_switch) + } + cView.tag = holder + } else holder = convertView.tag as ViewHolder + getItem(position).also { + holder.appIcon.setImageBitmap(it.iconBitmap) + holder.appName.text = it.appName + holder.pkgName.text = it.packageName + holder.cbrName.text = "贡献者:" + it.contributorName + holder.switch.isChecked = HookMedium.isAppNotifyHookOf(it.packageName) + holder.switch.setOnCheckedChangeListener { btn, b -> + if (!btn.isPressed) return@setOnCheckedChangeListener + HookMedium.putAppNotifyHookOf(it.packageName, b) + } + } + return cView!! + } + + inner class ViewHolder { + lateinit var appIcon: ImageFilterView + lateinit var appName: TextView + lateinit var pkgName: TextView + lateinit var cbrName: TextView + lateinit var switch: MaterialSwitch + } + } + } } } \ No newline at end of file diff --git a/app/src/main/res/layout/activity_config.xml b/app/src/main/res/layout/activity_config.xml index 1c901f9..4799c74 100644 --- a/app/src/main/res/layout/activity_config.xml +++ b/app/src/main/res/layout/activity_config.xml @@ -23,7 +23,8 @@ style="?android:attr/selectableItemBackgroundBorderless" android:layout_width="20dp" android:layout_height="20dp" - android:layout_marginEnd="15dp" + android:layout_marginStart="15dp" + android:layout_marginEnd="25dp" android:src="@mipmap/back" android:tint="@color/colorTextGray" /> @@ -38,5 +39,44 @@ android:textStyle="bold" /> + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/adapter_config.xml b/app/src/main/res/layout/adapter_config.xml new file mode 100644 index 0000000..0d924a4 --- /dev/null +++ b/app/src/main/res/layout/adapter_config.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/mipmap-xxhdpi/back.png b/app/src/main/res/mipmap-xxhdpi/back.png new file mode 100644 index 0000000000000000000000000000000000000000..49415ff18d6a1598eb02c8af8c26dd3ed36e043d GIT binary patch literal 3633 zcmX|Ec{r497k_39rVV4uQj9^ivTs=jW6#p?Qj@h2Wj8*1)_Q9Ug|ZEz)X-!PAvB{j z$k3uJSw_n8X03@K;(NT`b$x$4&wX9@eeQGr&bfc*KIf!6J6az(C~*(~fFrgx7%Vu_ zz%L)p1OBsY&u@YQBob?F4%7}F`v(+Sw8faY#(FK^3#s<76z?euhzZM-LE8|$iRmcs zk8p^Px%vrZo$`gwfWcD<_HjzwcAF_D3bkP-)ADlJ*%#Gw3iF`_7p7Va-;Pb@e=wg- zJ2zDg&m|#6Pa&ZMv&Ws3c0+$A`VFOXJHAwFzGPm`!F1v@J9&0CvrU!ok}3as!=utw z4}fUw8O7RB+kxq7NTJlvVYjNNGo4;7v;)1f5O57*OB~vCt8i8<@v3ptOURBn00Fvp z26@Z`Cen%a_~_SmD4a;+4Of;tM8gzNq^tlbjqQHJF&cPg+gaiBr`n8=*$M1Oan|f_ zNleqLYaRCRxUvmJ$}og}`ix_2G4Tcck-Vm-K<~0bve=EGXo(Np4}C>sP*1DOW`ABs zs}4xRy0lRQiM@662lbC}H7^!yr{pt@920V}EnM_C=9sq?W{6pY8c9Xhnr!7^U4Z(` zF%dn)d&>SKcj`o;smxb*;^q4y4?Mp)lYZGEkIwPGTGPcdw-PnKbDpgaZdR}ketQvn zz;9~Dj(P#&6W1YT>S>5_%QD^F{Q2#hU$KjOQ@m{U6}E!!Rp1>3OZA|-;yNkjc9BB8 z)!>OO0G*qOz7ie%%t%XX$ZuGr%>?fEVaHdjR)^s+%A55f%&dE1;bE3)-T6lUWL949 zt!kKNz%CL#j6zlYfZU&}FpzHWck1RrWh=2&D4{$l89b;D+XL%uZEZg*9Ez9RM{z8V-m1z1*=ClLmBKse@Br9+?MzIguUDzUkZg zSu9dRtM%4^f8)eu?cM%r6@rCab|72fM|u{KBON{JI~%n)yexiE>d_Mz{L%2v0pp2K zg3CRAq24?jJ~CQ)psbs-39O;3J}HkZuJhk0;i9U_K&e{Eg0uZzGt&H=nyrvS ziy~L_2sBhT?*X0+DA<{-Lq_d!qYffoH`>|Qe3=Y z`+LV!*l~ilE?mw(iQ>u)h-%@lPB=t);fF;|^B<7AxT}76L=w*+#~Hm3ZRu~uh3GZb z_Qu(zOoGf)2Exmne`2VvMUP#T_tv!e1>K;qa|3m`A2!x32BT3kcLDVW&AWz`wU@V? zQU*YN-O)JVWA!sv!yiQ|cPB?#s&d25fg~XTKAGg6p#lHM^7ogQE`of_6(H`PAOU0& zexkcg!7F0vM_Ht6b6u9&tRHyiDWQ5KG^##fKe6xP-D)TX|wA$zlr%J2%1JI zq&tHaJeLNNdYNC(>wVffv_D%ye+T0H3Qnls&P`@uJOqPOxpN?-Owz$0h86%S|2T4$D9ggpsWgC;dmDbgPs|tNq>CXffQt8Sl zT-@WIp2gmoEG~l5_ahKI^MfL3#pE2?6BLc&0(K^fMQxGh_Y@%6G4gCbLS zTG;dTACvvIwldQQaL=c+!VZJ{)Q4L_2H(bH|08Jk`M@ZrwRyPmS8x&~H}S}t{S{v1 zkNIMHjN9=KJ5~57t2EB9Cg*uy00;ePmYbm$~8q>1=>#s`ecR^s&L2AK9Qp?`w29fW%K;ux0add`R z`=|RJ=EyvlK*X6KPt$X2hl-MegO@Uhn<5`l_WvDWf9NXeUE`J~@AOosuM5>xqRv%0Au&y%;ZZT#doJd9N&>5t_d?BZ zY^T>AapeF(d%O`~oekB;#zbTnFYqij$NkUqk@K@U=L$gK#brNtH9_IH| zpbdqrC}21;_LfFF>2>*WNa;UMX0eK#{opNzMwHQCjEgnulgcXzW#=L9a?sTv2J{iY z%Fs%)0~+=j;q&MB`uGiZ%Ew$wXhSimYFqhHqWqo3cwRtM=)J5*TKQcQ=*hVl7o;Ww zmPwq_V`N&N^*j2dPabAs0lq$=uy-5HK&=sSMr!*o8p9uch2$6yuPlPrg?fiyWc?RR=t||kh zlR+r$D&6FgxXUf$0V9FU?fN>F{Z7#Iea#7w`^?M$afE|b5UC^pCa6c7Mf_XtboDXB zBF_q2wuA?g^1Wdl>Y&e-&QtC6e;{Y%aY3iAUK4t5jhotcnc-2>jJsJHbCqX>{}j2n zH0>a#^R_017aTDjZ_;@YYC||yFI5TGC$u&Q8rjMP4Ei$~?-1QIf=C`|unuk7BCrTd zA9K`Y6skN_e102LaYuH#22^ob0`YdX`x?>xN=@CDkHR&6@Ys+fJ?I1t7lukIIyH{Y=EeV!%5rHI8{#4h0eI@q=DrHpmcmjhd0OdWHFl<1Q9ycy1vrXM! zmtE!UfZ6c4*ro}FC&&Q$01%FdlnRwctvL2fbno<1hIeYYsv#*N%zuhbpoYUr3&#s2 z+gyuT4ykUEcvb(w(Me4A^Ic+FVq3O-=a$ehh_XUS_{%$eeSOiYC3m{4{K3*A3czIU zCj$z$!4T7%rwJu%B&YFrNp38SHTw1EpGv^yZ%^DTR$`9_^O)6(BF@utG#J5BV8WE8 zZ@0y`k^sNKofR4VbQa{9Zt;NpEvr{6Ldxz3_p7MTgSp*mU0L~d@`lh3a@xeaNjGz! z3Ub5Hkf3IqJ(vnsCffTW0kUo~_Ba5PM$6Jw-?GaV*EGYDIEU#kj(rwmA4aLllot?| z)w3ka4(*5TpTEU`|7Vgc(ZFWMCnJjl^9}`LBxf#Q1t2KiP++w961O}x z(~#4n$8ox^MA!+K=@jQ&Y(pu(v!bwLom*A$pWwvZ@;gquai_Byxtee_`0wk#CAS*M zWv4{h(sF8cRQ=mF@qZIKq7m|I23*im0Nk*vE#aEr~Jy*3Dcu!&Gj zObbcg$o3u)F14bcddqiz2k4d9uTm# Lbi~w}`=tFBNqyK~ literal 0 HcmV?d00001 diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index bdc04db..0df5e08 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -7,4 +7,5 @@ #656565 #FF000000 #FFFFFFFF + #00000000 \ No newline at end of file