通常app都会有一个设置界面,如下:


通常做法是自己定义布局,然后在代码里面添加响应函数,并将结果保存到Sharedpreferences中。 android给我们提供了PreferenceActivity来简化开发设置界面。 你只需这样做: 1.创建一个类继承PreferenceActivity,并导入设置界面布局:

[java] view plain copy
  1. packagecom.example.preferenceactivitydemo1;
  2. importandroid.os.Bundle;
  3. importandroid.preference.PreferenceActivity;
  4. publicclassMainActivityextendsPreferenceActivity
  5. {
  6. @SuppressWarnings("deprecation")
  7. @Override
  8. protectedvoidonCreate(BundlesavedInstanceState)
  9. {
  10. super.onCreate(savedInstanceState);
  11. addPreferencesFromResource(R.xml.main_preference);
  12. }
  13. }

2.在res目录下添加xml文件夹,并创建一个名为main_preference(即代码中引用的资源文件)的文件. 3.编写资源文件。 上图设置界面对应的资源文件如下: [html] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <PreferenceScreenxmlns:android="http://schemas.android.com/apk/res/android"
  3. android:title="标题">
  4. <PreferenceCategory
  5. android:summary="分组1"
  6. android:title="分组1标题">
  7. <ListPreference
  8. android:defaultValue="@string/defaultvalues"
  9. android:dialogTitle="对话框标题"
  10. android:entries="@array/entries"
  11. android:entryValues="@array/entriesvalue"
  12. android:key="myListPreference"
  13. android:summary="标题说明"
  14. android:title="小标题"/>
  15. <CheckBoxPreference
  16. android:key="doubi"
  17. android:summaryOff="逗比模式关闭"
  18. android:summaryOn="逗比模式开启"
  19. android:title="逗比模式">
  20. </CheckBoxPreference>
  21. </PreferenceCategory>
  22. <PreferenceCategory
  23. android:summary="分组2"
  24. android:title="分组2标题">
  25. <SwitchPreference
  26. android:key="fly"
  27. android:summaryOff="已关闭飞行模式"
  28. android:summaryOn="已开启飞行模式"
  29. android:switchTextOff="关闭"
  30. android:switchTextOn="开启"
  31. android:title="飞行模式">
  32. </SwitchPreference>
  33. <EditTextPreference
  34. android:defaultValue="zhangsan"
  35. android:dialogTitle="编辑姓名"
  36. android:key="name"
  37. android:summary="编辑您的姓名"
  38. android:title="编辑">
  39. </EditTextPreference>
  40. </PreferenceCategory>
  41. </PreferenceScreen>

其中引用了string.xml的相关内容:


[html] view plain copy
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <resources>
  3. <stringname="app_name">PreferenceActivityDemo1</string>
  4. <stringname="action_settings">Settings</string>
  5. <stringname="hello_world">Helloworld!</string>
  6. <string-arrayname="entries">
  7. <item>小苹果</item>
  8. <item>小香蕉</item>
  9. <item>小西瓜</item>
  10. </string-array>
  11. <string-arrayname="entriesvalue">
  12. <item>apple</item>
  13. <item>banana</item>
  14. <item>watermelon</item>
  15. </string-array>
  16. <stringname="defaultvalues">apple</string>
  17. </resources>

恩,就这么简单~
所有结果会保存到data/data/包名/shared_prefs目录下的包名_preferences.xml中,跟sharepreferences一样。

转自: http://blog.csdn.net/chdjj/article/details/38130345

更多相关文章

  1. Android中SharePreferences的简单实现
  2. Activity面试详解
  3. Activity之launchMode(运行模式)
  4. Android(安卓)AAC模式,该与 MVP 分手了!
  5. android自定义标题栏progressBar
  6. Android(安卓)requestWindowFeature()的应用
  7. Android(安卓)顶部灰条标题栏不显示的方法
  8. android 设计模式
  9. Android(安卓)优雅地退出App

随机推荐

  1. android模拟打电话的应用小程序
  2. android 环境安装、helloworld demo 创建
  3. Android新手入门 FAQ
  4. Android学习札记13:为什么更推荐使用Parce
  5. 在 Android 上使用协程(三) :Real Work
  6. Android网络游戏之神农诀项目开发--视频
  7. 《Android和PHP开发最佳实践》迷你书
  8. Android NDK入门实例 计算斐波那契数列一
  9. Android换肤的两种思路
  10. android利用JNI调用C++自定义类