diff --git a/app/src/main/java/com/fankes/miui/notify/data/ConfigData.kt b/app/src/main/java/com/fankes/miui/notify/data/ConfigData.kt index cdf1a3b..8e54494 100644 --- a/app/src/main/java/com/fankes/miui/notify/data/ConfigData.kt +++ b/app/src/main/java/com/fankes/miui/notify/data/ConfigData.kt @@ -51,6 +51,12 @@ object ConfigData { /** 启用通知图标兼容模式 */ val ENABLE_COLOR_ICON_COMPAT = PrefsData("_color_icon_compat", false) + /** 状态栏中的通知图标暗色透明度 */ + val STATUS_ICON_DARK_ALPHA_LEVEL = PrefsData("_status_icon_dark_alpha", 75) + + /** 状态栏中的通知图标亮色透明度 */ + val STATUS_ICON_LIGHT_ALPHA_LEVEL = PrefsData("_status_icon_light_alpha", 95) + /** 通知栏中的通知图标圆角程度 */ val NOTIFY_ICON_CORNER_SIZE = PrefsData("_notify_icon_corner", 15) @@ -218,6 +224,26 @@ object ConfigData { putBoolean(ENABLE_COLOR_ICON_COMPAT, value) } + /** + * 状态栏中的通知图标暗色透明度 + * @return [Int] + */ + var statusIconDarkAlphaLevel + get() = getInt(STATUS_ICON_DARK_ALPHA_LEVEL) + set(value) { + putInt(STATUS_ICON_DARK_ALPHA_LEVEL, value) + } + + /** + * 状态栏中的通知图标亮色透明度 + * @return [Int] + */ + var statusIconLightAlphaLevel + get() = getInt(STATUS_ICON_LIGHT_ALPHA_LEVEL) + set(value) { + putInt(STATUS_ICON_LIGHT_ALPHA_LEVEL, value) + } + /** * 通知栏中的通知图标圆角程度 * @return [Int] diff --git a/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt b/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt index 619255b..1058be3 100644 --- a/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt +++ b/app/src/main/java/com/fankes/miui/notify/hook/entity/SystemUIHooker.kt @@ -165,7 +165,8 @@ object SystemUIHooker : YukiBaseHooker() { * 获取状态栏通知图标透明度 * @return [Float] */ - private val statusBarIconAlpha get() = if (isDarkIconMode) 0.75f else 0.95f + private val statusBarIconAlpha + get() = (if (isDarkIconMode) ConfigData.statusIconDarkAlphaLevel else ConfigData.statusIconLightAlphaLevel) / 100f /** * - 这个是修复彩色图标的关键核心代码判断 diff --git a/app/src/main/java/com/fankes/miui/notify/ui/activity/MainActivity.kt b/app/src/main/java/com/fankes/miui/notify/ui/activity/MainActivity.kt index 781726a..7268d1c 100644 --- a/app/src/main/java/com/fankes/miui/notify/ui/activity/MainActivity.kt +++ b/app/src/main/java/com/fankes/miui/notify/ui/activity/MainActivity.kt @@ -245,6 +245,12 @@ class MainActivity : BaseActivity() { SystemUITool.refreshSystemUI(context = this@MainActivity, isRefreshCacheOnly = true) } } + binding.statusDarkIconCustomAlphaSeekbar.bind( + ConfigData.STATUS_ICON_DARK_ALPHA_LEVEL, binding.statusDarkIconCustomAlphaText, suffix = "%" + ) { SystemUITool.refreshSystemUI(context = this) } + binding.statusLightIconCustomAlphaSeekbar.bind( + ConfigData.STATUS_ICON_LIGHT_ALPHA_LEVEL, binding.statusLightIconCustomAlphaText, suffix = "%" + ) { SystemUITool.refreshSystemUI(context = this) } binding.notifyIconCustomCornerSeekbar.bind(ConfigData.NOTIFY_ICON_CORNER_SIZE, binding.notifyIconCustomCornerText, suffix = " dp") { SystemUITool.refreshSystemUI(context = this) } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 02f10c3..4c8de30 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -452,14 +452,14 @@ android:elevation="0dp" android:gravity="center" android:orientation="vertical" - android:paddingLeft="15dp" - android:paddingTop="15dp" - android:paddingRight="15dp"> + android:paddingTop="15dp"> + android:gravity="center|start" + android:paddingLeft="15dp" + android:paddingRight="15dp"> @@ -501,9 +503,164 @@ android:layout_marginBottom="10dp" android:alpha="0.6" android:lineSpacingExtra="6dp" + android:paddingLeft="15dp" + android:paddingRight="15dp" android:text="如果发现通知图标颜色判定不正常可启用兼容模式,一般情况下不建议启用兼容模式,发生问题请关闭兼容模式。" android:textColor="@color/colorTextDark" android:textSize="12sp" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +