Android Activity加载SettingsFragment
来源:互联网 发布:知乎 1024地址 编辑:程序博客网 时间:2024/05/18 01:51
Activity加载SettingsFragment 设置
Preference.xml布局:
<?xml version="1.0" encoding="UTF-8"?><PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > <PreferenceCategory android:title="第一组"> <ListPreference android:icon="@drawable/zjl" android:dialogTitle="list dialog Title" android:entries="@array/citys" android:entryValues="@array/citys_code" android:key="list_key" android:summary="list 的内容" android:title="选择 title" /> </PreferenceCategory> <PreferenceCategory android:title="第二组"> <EditTextPreference android:icon="@drawable/ic_launcher" android:defaultValue="缺省值1" android:key="edit_text_key_1" android:summary="edit summary" android:title="写什么 text 1" /> <CheckBoxPreference android:icon="@drawable/ic_launcher" android:defaultValue="true" android:key="checkbox_key" android:summary="checkbox summary" android:title="勾选 title" /> </PreferenceCategory> <!-- 点击将浏览和打开网页 --> <Preference android:icon="@drawable/csdn" android:summary="http://blog.csdn.net/Rokends" android:title="网页浏览"> <intent android:action="android.intent.action.VIEW" android:data="http://blog.csdn.net/Rokends" /> </Preference> <SwitchPreference android:icon="@drawable/wifi" android:key="open_key" android:summary="Chaniese_520" android:title="WiFi" /> <!-- 此处将跳转到下一屏设置 --> <PreferenceScreen android:icon="@drawable/ic_launcher" android:key="preference_screen_key_2" android:persistent="false" android:title="跳转到下页 " > <EditTextPreference android:icon="@drawable/ic_launcher" android:defaultValue="缺省值2" android:key="edit_text_key_2" android:summary="edit summary" android:title="写什么 text 2" /> </PreferenceScreen> </PreferenceScreen>
arrys.xml:
<?xml version="1.0" encoding="utf-8"?><resources> <string-array name="citys"> <item>成都</item> <item>北京</item> <item>上海</item> </string-array> <string-array name="citys_code"> <item>028</item> <item>010</item> <item>021</item> </string-array></resources>
ManiActivity :
package com.example.settings;import android.app.Activity;import android.os.Bundle;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit();}}
SettingsFragment extends PreferenceFragment:
package com.example.settings;import android.content.SharedPreferences;import android.content.SharedPreferences.OnSharedPreferenceChangeListener;import android.os.Bundle;import android.preference.EditTextPreference;import android.preference.ListPreference;import android.preference.Preference;import android.preference.PreferenceFragment;import android.preference.PreferenceManager;import android.preference.PreferenceScreen;import android.util.Log;import android.widget.Toast;public class SettingsFragment extends PreferenceFragment{private OnSharedPreferenceChangeListener mOnSharedPreferenceChangeListener = new OnSharedPreferenceChangeListener() {@Overridepublic void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {if(key.equals(A_KEY)){String s=sharedPreferences.getString(A_KEY, "NULL");mEditTextPreference.setSummary(s);}if(key.equals("list_key")){String e=mListPreference.getEntry()+"";String v=mListPreference.getValue();mListPreference.setSummary(e+" - "+v);}Toast.makeText(getActivity(), key, Toast.LENGTH_SHORT).show();}};private EditTextPreference mEditTextPreference;private final String A_KEY = "edit_text_key_1";privateListPreference mListPreference;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 通用的读取设置的某个值的方法SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(getActivity());String s = sharedPreferences.getString("edit_text_key_1", "暂时为空");Log.d("edit_text_key_1", s);addPreferencesFromResource(R.xml.preferences);sharedPreferences.registerOnSharedPreferenceChangeListener(mOnSharedPreferenceChangeListener);mEditTextPreference = (EditTextPreference) findPreference(A_KEY);mListPreference=(ListPreference) findPreference("list_key");}@Overridepublic void onResume() { super.onResume(); getPreferenceScreen().getSharedPreferences() .registerOnSharedPreferenceChangeListener(mOnSharedPreferenceChangeListener); } @Overridepublic void onPause() { super.onPause(); getPreferenceScreen().getSharedPreferences() .unregisterOnSharedPreferenceChangeListener(mOnSharedPreferenceChangeListener); } // 那一个设置选项栏被触发 @Override public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) { Toast.makeText(getActivity(), preference.getTitle()+" -> "+preference.getKey(), Toast.LENGTH_LONG).show(); return false; } }
0 0
- Android Activity加载SettingsFragment
- android Activity加载模式
- Android Activity 加载模式
- android activity动态加载
- android ---Activity加载模式
- android activity 加载模式launchmode
- android判断activity是否加载
- Android Activity有四种加载模式
- Android Activity加载完成事件
- android activity 实例加载模式
- Android Activity的加载模式
- Android之activity加载模式
- Android动态加载Activity原理
- Android动态加载Activity原理
- android Activity加载前显示加载中
- Android -android程序最先加载的Activity
- Android四种Activity的加载模式
- Android四种Activity的加载模式
- BZOJ 3223 文艺平衡树 【Splay】
- CentOS的自动补全
- Java中的instanceof关键字
- PHP如何实现无限回复
- strut2转发
- Android Activity加载SettingsFragment
- 打包工具之命令篇
- 单链表反转
- Android 快速开发系列 打造万能的ListView GridView 适配器
- android ProgressBar 实现自定义进度条
- hdu1269 强连通分量
- HTTP文件断点上传
- Premiere Pro CS6基础视频教程
- 分析 Package manager has died