首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

小结复习android SharedPreferences XML存储方式

2012-07-19 
总结复习android SharedPreferencesXML存储方式???SharedPreferences译者署名: madgoat译者链接:http://ma

总结复习android SharedPreferences XML存储方式

?

?

?

SharedPreferences

译者署名: madgoat

译者链接:http://madgoat.cn

翻译版本:Android 2.3 r1

结构

继承关系

public interface SharedPreferences

?

android.content.SharedPreferences

类概述

用于访问和修改getSharedPreferences(String, int)返回偏好设置数据(preference data)的一个接口。对于任何一组特殊的preferences,所有的客户端共享一个此类单独的实例。

注意:当前此类不支持多线程访问。后续将添加。

(译者注:这里译为” 偏好设定”,类似于ini文件,用于保存应用程序的属性设置)

参见

getSharedPreferences(String, int)

用于修改SharedPreferences对象设定值的接口。

?

interface SharedPreferences.OnSharedPreferenceChangeListener

接口定义一个用于在偏好设定(shared preference)改变时调用的回调函数。

public class PreferencesDemo extends Activity {

/** Called when the activity is first created. */ 
// 取得活动的Preferences对象 
@Override public void onCreate(Bundle savedInstanceState) 
{ super.onCreate(savedInstanceState); setContentView(R.layout.main);
 Context ctx = this; SharedPreferences sp = ctx.getSharedPreferences("SP", MODE_PRIVATE); 
// 存入数据 Editor editor = sp.edit(); editor.putString("STRING_KEY", "string"); 
editor.putInt("INT_KEY", 0); editor.putBoolean("BOOLEAN_KEY", true); editor.commit(); 
// 返回STRING_KEY的值 Log.d("SP", sp.getString("STRING_KEY", "none"));
 // 如果NOT_EXIST不存在,则返回值为"none" Log.d("SP", sp.getString("NOT_EXIST", "none")); } } 

?

?

?

?

?

公共方法

public abstract boolean contains (String key)

判断preferences是否包含一个preference。

参数

key 想要判断的preference的名称

返回值

如果preferences中存在preference,则返回true,否则返回false。

?

public abstract SharedPreferences.Editor edit ()

针对preferences创建一个新的Editor对象,通过它你可以修改preferences里的数据,并且原子化的将这些数据提交回SharedPreferences对象。(译者注:原子化——作为一个整体提交,原子性)

注意:如果你想要在SharedPreferences中实时显示,刚通过Editor对象进行的修改,那么你必须调用commit()方法。

返回值

返回一个SharedPreferences.Editor的新实例,允许你修改SharedPreferences对象里的值。

?

public abstract Map<String, ?> getAll ()

取得preferences里面的所有值

返回值

返回一个map,其中包含一列preferences中的键值对

异常

空指针异常(NullPointerException)

?

public abstract boolean getBoolean (String key, boolean defValue)

从preferences中获取一个boolean类型的值。

参数

key 获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个boolean类型,则抛出ClassCastException。

异常

ClassCastException

?

public abstract float getFloat (String key, float defValue)

从preferences中获取一个float类型的值。

参数

key 获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个float类型,则抛出ClassCastException。

异常

ClassCastException

?

public abstract int getInt (String key, int defValue)

从preferences中获取一个int类型的值。

参数

key 获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个int类型,则抛出ClassCastException。

异常

ClassCastException

?

public abstract long getLong (String key, long defValue)

从preferences中获取一个long类型的值。

参数

key 获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个long类型,则抛出ClassCastException。

异常

ClassCastException

?

public abstract String getString (String key, String defValue)

从preferences中获取一个String类型的值。

参数

key 获取的preference的名称

defValue 当此preference不存在时返回的默认值

返回值

如果preference存在,则返回preference的值,否则返回defValue。如果使用此名称的preference不是一个String类型,则抛出ClassCastException。

异常

ClassCastException

?

public abstract void registerOnSharedPreferenceChangeListener (SharedPreferences.OnSharedPreferenceChangeListener listener)

注册一个回调函数,当一个preference发生变化时调用。

参数

listener 将会被调用的回调函数

参见

unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener)

?

public abstract void unregisterOnSharedPreferenceChangeListener (SharedPreferences.OnSharedPreferenceChangeListener listener)

注销一个之前(注册)的回调函数

参数

listener 要被注销的回调函数

参见

registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener)

热点排行