PreferenceActivity系统本身的设置页
来源:互联网 发布:淘宝二级页面怎么做 编辑:程序博客网 时间:2024/05/18 00:30
PreferenceActivity 系统本身的设置页
PreferenceActivity extends ListView
分组:PreferenceCategory
开关:CheckBoxference
ListPreference
EditTextPreference
每一次设置,都会被Preference,这就是setting的数据持久化。
//数组定义 <!--?xml version="1.0" encoding="utf-8"?--> <resources> <string-array name="list_preference"> <item>Red</item> <item>Blue</item> <item>Green</item> </string-array> </resources>
<?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > <CheckBoxPreference android:defaultValue="false" android:key="running_state" android:summary="@string/running_summary_stopped" //摘要 android:title="@string/running_label" /> //标题 <PreferenceCategory //分类、种类 android:key="settings" android:title="@string/settings_label" > <EditTextPreference android:defaultValue="@string/username_default" android:key="username" android:title="@string/username_label" /> <PreferenceScreen //点击启动一个新的Preference 界面,如果配置intent节点,甚至可以启动浏览器打开web xmlns:android="http://schemas.android.com/apk/res/android" android:title="@string/advancedsettings_label" > <EditTextPreference android:defaultValue="@string/portnumber_default" android:key="portNum" android:title="@string/portnumber_label" /> <CheckBoxPreference android:defaultValue="@string/wakelock_default" android:key="stayAwake" android:title="@string/wakelock_label" /> </PreferenceScreen> </PreferenceCategory> <PreferenceCategory android:key="extra_category" android:title="@string/extra_label" > <Preference android:key="help" android:title="@string/help_label" /> </PreferenceCategory> </PreferenceScreen>
//Setting中是加入这些UI信息 public class Setting extends PreferenceActivity implements OnSharedPreferenceChangeListener{ private EditTextPreference mEtPreference; private ListPreference mListPreference; private CheckBoxPreference mCheckPreference; protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); //显示xml addPreferencesFromResource(R.xml.preferences); initPreferences(); } private void initPreferences(){ mEtPreference =(EditTextPreference)findPreference(Consts.EDIT_KEY); mListPreference = (ListPreference)findPreference(Consts.LIST_KEY); mCheckPreference = (CheckBoxPreference)findPreference(Consts.CHECKOUT_KEY); } } //获取自己设置好的偏好 //我们需要注册一个Preference变化的Listener来监听这些事件。当我们做好设置后,Preference已经替我们做好了数据持久化了。 protected void onResume(){ super.onResume(); //SetUp the inital values SharedPreferences sharedPreferences = getPreferenceScreen().getSharedPreferences(); /* SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this);//==getSharedPreferences("packageName_preferences" ,MODE_PRIVATE); */ mListPreference.setSummary(sharedPreferences.getString(Consts.LIST_KEY, "")); mEtPreference.setSummary(sharedPreferences.getString(Consts.EDIT_KEY, "linc")); sharedPreferences.registerOnSharedPreferenceChangeListener(this); } protected void onPause(){ super.onPause(); getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this); } public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,String key){ if(key.equals(Consts.EDIT_KEY)){ mEtPreference.setSummary(sharedPreferences.getString(key,"20")); }else if(key.equals(Consts.LIST_KEY)){ mListPreference.setSummary(sharedPreferences.getString(key,"")); } } //在其他Activity中获得设置的值 SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(this); tvCheckout.setText(settings.getBoolean(Consts.CHECKOUT_KEY,false)+"");
0 0
- PreferenceActivity系统本身的设置页
- 保存设置的PreferenceActivity
- Android之PreferenceActivity的讲解(系统设置界面)
- android系统语言设置对app本身的影响
- 用于设置的activity:PreferenceActivity
- 可保存设置的activity :preferenceActivity
- PreferenceActivity-Android的设置界面
- 设置PreferenceActivity
- Android Settings 系统设置中 PreferenceActivity点击Header是如何处理的?
- PreferenceActivity,可以保存设置的Activity
- PreferenceActivity:设置页面的一般使用方法
- preferenceActivity实现手机的设置功能
- PreferenceActivity(首选项设置页)
- PreferenceActivity简单使用app设置页
- PreferenceActivity(首选项设置页)
- PreferenceActivity(首选项设置页)
- PreferenceActivity(首选项设置页)
- SharedPreferences(系统偏好设置)(二)——PreferenceActivity
- Hibernate插入数据到数据库中时让数据库中的字段默认值生效
- 欢迎自己写博客,记录我的学习成长。
- 欢迎使用CSDN-markdown编辑器
- [转]中国在线教育那点事
- 阿里巴巴2016年-校招-实习生岗位-内推
- PreferenceActivity系统本身的设置页
- oracle数据库扩容
- Codeforces 631C:Report
- 使用数组打印乘法口诀
- 基于大数据分析的异常检测方法及其思路实例
- 用 C 语言编写一个简单的垃圾回收器
- Python导入自定义模块
- 胖子 账
- 机器学习综述