欢迎来到天天文库
浏览记录
ID:40234634
大小:625.24 KB
页数:35页
时间:2019-07-27
《Android移动应用开发案例教程教学课件作者范美英Android移动应用开发案例教程6课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Android移动应用开发案例教程第6章Android中的数据存取6.1实例1:保存偏好设置6.1实例1:保存偏好设置创建项目ApplicationName:06_TestSharedPrefProjectName:06_TestSharedPrefPackageName:com.book.testsharedprefActivityName:MainActivityLayoutName:activity_main定义所需字符串资源定义数组资源设置列表所需的列表项及列表项对应的数值6.1实例1:保存偏好设置
2、定义菜单资源主界面中有选项菜单,存放在res/menu/main.xml中。定义主界面布局activity_main6.1实例1:保存偏好设置定义设置界面setting.xml设置界面setting.xml存放在res/xml/目录下。该界面是用于设置的界面,定义界面时可以设置根元素为PreferenceScreen。与其他布局不同的是在使用时不能用setContentView()方法设置Activity的布局,而就应该将用此布局的Activity继承于PreferenceActivity,这样就可以通过调
3、用addPreferencesFromResource()方法获得到该界面。这样做的目的在于使设置界面与Android的设置界面风格相一致。6.1实例1:保存偏好设置定义PreferSetting.java类这个类需要继承PreferenceActivity,并且需要实现OnPreferenceChangeListener方法,用来监听设置发生改变的事件。publicclassPreferSettingextendsPreferenceActivityimplementsOnPreferenceChange
4、Listener{…}6.1实例1:保存偏好设置功能代码//声明SharedPreferences对象staticSharedPreferencessp;//声明ListPreference对象ListPreferencelp_size,lp_color;//声明CheckBoxPreference对象CheckBoxPreferencechk_default;//声明SharedPreferences编辑器对象Editorfont_editor;6.1实例1:保存偏好设置功能代码//设置页面布局addPr
5、eferencesFromResource(R.xml.settings);//获取本应用的SharedPreferencessp=this.getSharedPreferences("UserPref",0);//从SharedPreferences中取出“是否默认设置”的值if(sp.getBoolean(OPT_DEFAULT,false)){//如果是默认设置,则两个列表项不可用lp_size.setEnabled(false);lp_color.setEnabled(false);}6.1实例1:
6、保存偏好设置功能代码@OverridepublicbooleanonPreferenceChange(Preferencepreference,ObjectnewValue){//获取SharedPreferences编辑器对象font_editor=sp.edit();//判断改变了哪个设置项if(preference.getKey().equals(OPT_SIZE)){//取得选择的列表项对应的下标intindex=lp_size.findIndexOfValue((String)newValue);
7、//定义列表项值对应的数组entriesCharSequence[]entries=lp_size.getEntryValues();//从列表项值数组中取出用户的选项并转换为整型intsize_value=Integer.valueOf((String)entries[index]);//将用户的选择写入到SharedPreferences编辑器font_editor.putInt(OPT_SIZE,size_value);//提交font_editor.commit();returntrue;}…}6.
8、1实例1:保存偏好设置功能代码@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);tv=(TextView)findViewById(R.id.tv);//获取当前应用的SharedPreferences对
此文档下载收益归作者所有