【Android 开发教程】编码实现获取与修改预设信息中的值
来源:互联网 发布:sqlserver 按字节截断 编辑:程序博客网 时间:2024/06/06 18:05
本章节翻译自《Beginning-Android-4-Application-Development》,如有翻译不当的地方,敬请指出。
原书购买地址http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/在上一节中,大家已经看到了,PreferenceActivity这个类允许用户在运行时去创建和修改首选项信息。如果想要使用这些首选项信息,你就需要使用SharedPreferences这个类。
1. 继续使用上一节中的工程,在UsingPreferences.java中添加一些代码。
public class UsingPreferencesActivity extends Activity {/** Called when the activity is first created. */@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);}public void onClickLoad(View view) {Intent i = new Intent("net.manoel.AppPreferenceActivity");startActivity(i);}public void onClickDisplay(View view) {SharedPreferences appPrefs = getSharedPreferences("net.manoel.UsingPreferences_preferences", MODE_PRIVATE); DisplayText(appPrefs.getString("editTextPref", ""));}public void onClickModify(View view) {SharedPreferences appPrefs = getSharedPreferences("net.manoel.UsingPreferences_preferences", MODE_PRIVATE);SharedPreferences.Editor prefsEditor = appPrefs.edit();prefsEditor.putString("editTextPref", ((EditText) findViewById(R.id.txtString)).getText().toString());prefsEditor.commit();}private void DisplayText(String str) {Toast.makeText(getBaseContext(), str, Toast.LENGTH_LONG).show();}}2. 按F11在模拟器上面调试。这一次点击Display Preferences Values 这个按钮,将会看到:
3. 在EditText中输入一些字符,然后点击Modify Preferences Values按钮。
4. 再次点击Display Preferences Values按钮,可以看到,首选项中的值被更新了。
在onClickDisplay()方法中,使用getSharedPreferences()去获取SharedPreferences类的实例。这里我指定了xml文件的名字“net.manoel.UsingPreferences_preferences”。通常格式是包名_preferences。我还使用了getString()去获取一个字符串,这个字符串作为预设信息的键值:
public void onClickDisplay(View view) {SharedPreferences appPrefs = getSharedPreferences("net.manoel.UsingPreferences_preferences", MODE_PRIVATE); DisplayText(appPrefs.getString("editTextPref", ""));}MODE_PRIVATE常量说明这个首选项文件只能被创建它的程序打开。
在OnClickModify()方法中,我通过SharedPreferences对象的edit()方法创建了一个SharedPreferences.Editor对象。如果想要改变一个字符串预设值,就用putString()方法。最后,使用commit()方法去保存:
public void onClickModify(View view) {SharedPreferences appPrefs = getSharedPreferences("net.manoel.UsingPreferences_preferences", MODE_PRIVATE);SharedPreferences.Editor prefsEditor = appPrefs.edit();prefsEditor.putString("editTextPref", ((EditText) findViewById(R.id.txtString)).getText().toString());prefsEditor.commit();}
- 【Android 开发教程】编码实现获取与修改预设信息中的值
- 【Android 开发教程】获取预设信息
- 【Android 开发教程】纯编码实现UI
- Android与H5混合开发中获取H5存储在localStorage中的数据信息
- Android地图开发中的地理编码与地理反编码
- Android地图开发中的地理编码与地理反编码
- Android地图开发中的地理编码与地理反编码
- 【Android 开发教程】通过编码实现发送短信
- android开发中的权限与权限获取
- PX2分享Android预设桌面定制与电量图标修改以及版本更改
- [IOS开发教程] iOS获取设备信息
- PHP开发中修改服务器中的编码
- 蓝鸥Unity开发教程之课时12 预设体
- Android 中的编码与解码
- Android 中的编码与解码
- Android开发_修改listview中信息
- android 开发 获取apk 信息和sha1值的项目
- 【Android 开发教程】保存状态等信息
- 求一个向量的任何连续子向量的最大和的4种算法实现(简单实例)
- LeetCode : Anagrams
- [Front-end] Bring Premium Pixels to Life
- 结构体的初始化问题
- ubuntu安装jdk
- 【Android 开发教程】编码实现获取与修改预设信息中的值
- 关于ARM的22个常用概念(网友的总结非常好)
- GUID概念
- Codeforces Round #153 (Div. 2)
- 二维数组,
- 用java实现简单选择排序的动态演示
- Set转Map
- 关于class_device_create和class_device_destroy
- 图像处理与计算机视觉:基础,经典以及最近发展