用SharedPreferences做setting(设置界面)
2015-06-11 12:32
183 查看
界面布局用XML文件,
![](http://img.blog.csdn.net/20150611112214997)
放在XML文件夹下,不是放在布局文件下。
下面来看看代码
运行界面:
![](http://img.blog.csdn.net/20150611121843282)
这里其实有一个PrefenceGroup,PreferenceScreen继承它
![](http://img.blog.csdn.net/20150611121038203)
PreferenceScreen:用于显示一个布局,是所有子控件的父类。
PreferenceCategory:标签,相当于一组组件的标签,如:声音排序,来电
key:用来寻找组件的,在这里不可以用findID的方法,所以用key来存储,来寻找。
![](http://img.blog.csdn.net/20150611122217957)
震动处有一个选择的,
![](http://img.blog.csdn.net/20150611122414623)
用item存储在array中,
entries设置的内容是我们在设置时看到的内容,android:entryValues就是保存在preferences.xml中的值。
MainActivity:
Preference pref= findPreference(“silentmode”);用这个来find key
pref.setOnPreferenceClickListener(new OnPreferenceClickListener()
用这个来设置监听,这里用的匿名内部类。
放在XML文件夹下,不是放在布局文件下。
下面来看看代码
<?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > <PreferenceCategory android:key="ordingspeech" android:title="声音排序" android:summary="请给声音排序" > <CheckBoxPreference android:key="silentmode" android:title="静音模式" android:summary="除了铃声外,全部静音!"/> <ListPreference android:dialogTitle="震动" android:key="vibrate" android:title="震动" android:entries="@array/vibaratelist" android:entryValues="@array/vibaratelist" android:summary="仅在静音模式下震动!"/> </PreferenceCategory> <PreferenceCategory android:title="来电" > <RingtonePreference android:title="手机铃声" /> </PreferenceCategory> <Preference android:title="其他"/> <PreferenceScreen android:title="设置WiFi"> <intent android:action="android.settings.SETTINGS" /> <EditTextPreference android:title="请输入WiFi地址" android:key="inputwifi" /> </PreferenceScreen> </PreferenceScreen>
运行界面:
这里其实有一个PrefenceGroup,PreferenceScreen继承它
PreferenceScreen:用于显示一个布局,是所有子控件的父类。
PreferenceCategory:标签,相当于一组组件的标签,如:声音排序,来电
key:用来寻找组件的,在这里不可以用findID的方法,所以用key来存储,来寻找。
震动处有一个选择的,
用item存储在array中,
entries设置的内容是我们在设置时看到的内容,android:entryValues就是保存在preferences.xml中的值。
MainActivity:
package com.example.sharedpreferences_2; import android.app.Activity; import android.app.backup.SharedPreferencesBackupHelper; import android.content.Context; import android.os.Bundle; import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; import android.preference.PreferenceActivity; import android.test.PerformanceTestCase; import android.view.Menu; import android.view.MenuItem; import android.widget.Toast; public class MainActivity extends PreferenceActivity{ @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.settings); Preference pref= findPreference("silentmode"); pref.setOnPreferenceClickListener(new OnPreferenceClickListener() { @Override public boolean onPreferenceClick(Preference preference) { // TODO Auto-generated method stub Toast.makeText(MainActivity.this, preference.getTitle(), 3000).show(); return true; } }); } }
Preference pref= findPreference(“silentmode”);用这个来find key
pref.setOnPreferenceClickListener(new OnPreferenceClickListener()
用这个来设置监听,这里用的匿名内部类。
相关文章推荐
- 通过Anuglar Material串串学客户端开发 - javascript编译和gulpfile.js
- 不被select选择框遮挡的div层 (可拖动)-- 2007-12-21的博客搬家
- css学习笔记
- html5实现的一些效果
- JavaScript中的setUTCDate()方法使用详解
- 重新介绍 JavaScript
- 从零开始学习jQuery
- JS/Jquery判断对象为空的方法
- AngularJs学习
- 详解JavaScript中setSeconds()方法的使用
- JavaScript中setMonth()方法的使用详解
- css !important用法以及CSS样式使用优先级判断
- Workspace in use or cannot be created, choose a different one.--错误解决办法
- 驴吃胡萝卜问题——牛客/FEI
- javaScript 关于闭包问题
- nodejs模块加载机制
- 在JavaScript中处理时间之setMinutes()方法的使用
- JavaScript捕获window窗口关闭事件
- JS打印
- JavaScript中的setMilliseconds()方法使用详解