问题背景
客户有隐藏导航栏状态栏的需求且APK中调用了打开设置界面的操作,因此客户想要在设置中增添退出选项。
最终效果
问题解决
修改思路:仿照其他选项增加个item并实现item点击事件为退出设置。
具体实现如下:
diff --git a/android/packages/apps/Settings/res/values/strings.xml b/android/packages/apps/Settings/res/values/strings.xml
index ec0a407006..b3b424f7d8 100644
--- a/android/packages/apps/Settings/res/values/strings.xml
+++ b/android/packages/apps/Settings/res/values/strings.xml
@@ -11411,5 +11411,6 @@
<string name="work_policy_privacy_settings">Your work policy info</string>
<!-- Summary for Enterprise Privacy settings, explaining what the user can expect to find under it [CHAR LIMIT=NONE]-->
<string name="work_policy_privacy_settings_summary">Settings managed by your IT admin</string>
-
+ <string name="exit_settings">退出设置</string>
+ <string name="exit_settings_summary">返回主界面或关闭应用</string>
</resources>
diff --git a/android/packages/apps/Settings/res/xml/top_level_settings.xml b/android/packages/apps/Settings/res/xml/top_level_settings.xml
index 367f426f5f..77e6dc204a 100644
--- a/android/packages/apps/Settings/res/xml/top_level_settings.xml
+++ b/android/packages/apps/Settings/res/xml/top_level_settings.xml
@@ -20,6 +20,15 @@
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="top_level_settings">
+ <!-- 添加个退出设置选项 -->
+ <Preference
+ android:key="top_level_exit_settings"
+ android:title="@string/exit_settings"
+ android:summary="@string/exit_settings_summary"
+ android:order="-130"
+ android:icon="@drawable/ic_homepage_system_dashboard"
+ android:onClick="exitSettings" />
+
<Preference
android:key="top_level_network"
android:title="@string/network_dashboard_title"
diff --git a/android/packages/apps/Settings/src/com/android/settings/homepage/TopLevelSettings.java b/android/packages/apps/Settings/src/com/android/settings/homepage/TopLevelSettings