【Android 开发教程】修改首选项文件的默认名字

本文详细介绍了如何在Android应用中自定义首选项文件名,并通过实例展示了如何使用PreferenceManager类来设置首选项文件名及加载XML配置。此外,还演示了如何在应用中读取、修改和显示首选项数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本章节翻译自《Beginning-Android-4-Application-Development》,如有翻译不当的地方,敬请指出。

原书购买地址http://www.amazon.com/Beginning-Android-4-Application-Development/dp/1118199545/


在我的设备上面,默认的首选项名字是net.manoel.UsingPreferences_preferences.xml,这个名字是使用包名作为前缀的。然而,给首选项定义一个特殊的名字也是非常有益的。可以按照下面这么做。

public class AppPreferenceActivity extends PreferenceActivity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        
        PreferenceManager prefMgr = getPreferenceManager();
        prefMgr.setSharedPreferencesName("appPreferences");

        //---load the preferences from an XML file---
        addPreferencesFromResource(R.xml.myapppreferences);
    }
}

这里,我们使用PreferenceManager这个类去设置首选项文件的名字为appPreferences.xml。

同时,修改UsingPreferencesActivity.java这个类。

public class UsingPreferencesActivity extends Activity {
	/** Called when the activity is first created. */
	@Override
	public 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); 
		*/
        SharedPreferences appPrefs = 
                getSharedPreferences("appPreferences", MODE_PRIVATE);

		DisplayText(appPrefs.getString("editTextPref", ""));
	}

	public void onClickModify(View view) {
		/*
		SharedPreferences appPrefs = 
				getSharedPreferences("net.manoel.UsingPreferences_preferences", 
						MODE_PRIVATE);
		*/
        SharedPreferences appPrefs = 
                getSharedPreferences("appPreferences", 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();
	}

}
当我们返回到应用并且修改首选项的时候,就会看到appPreferences.xml这个文件已经被创建了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值