android采用SharedPreferences保存用户偏好设置参数
				
									
					
					
						|  | 
							admin 2013年2月25日 23:27
								本文热度 5492 | 
					
				 
				
 android中SharedPreferences最常被用来保存用户的一些个人配置。
1、main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 
> 
<TextView 
android:text="姓名" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content"/> 
<EditText 
android:id="@+id/et_name" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
/> 
<TextView 
android:text="密码" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content"/> 
<EditText 
android:id="@+id/et_pwd" 
android:password="true" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
/> 
<Button 
android:id="@+id/bt_save" 
android:text="保存" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
/> 
<Button 
android:id="@+id/bt_read" 
android:text="读取" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
/> 
</LinearLayout> 
2、MainActivity.java
public class MainActivity extends Activity { 
private Button bt_save,bt_read; 
private EditText et_name,et_pwd; 
private ShareService ss; 
private String name,pwd; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
bt_save = (Button) this.findViewById(R.id.bt_save); 
bt_read = (Button) this.findViewById(R.id.bt_read); 
et_name = (EditText) this.findViewById(R.id.et_name); 
et_pwd = (EditText) this.findViewById(R.id.et_pwd); 
ss = new ShareService(this); 
bt_save.setOnClickListener(new OnClickListener() { 
@Override 
public void onClick(View v) { 
name = et_name.getText().toString(); 
pwd = et_pwd.getText().toString(); 
ss.save(name,pwd); 
et_name.setText(""); 
et_pwd.setText(""); 
} 
}); 
bt_read.setOnClickListener(new OnClickListener() {
@Override 
public void onClick(View v) { 
Map<String, String> map = ss.read(); 
et_name.setText(map.get("name")); 
et_pwd.setText(map.get("password")); 
} 
}); 
} 
} 
3、ShareService.java
public class ShareService { 
private Context context; 
private SharedPreferences preferences = null; 
public ShareService(Context context) { 
this.context = context; 
} 
public void save(String name, String pwd) { 
preferences = context.getSharedPreferences("temp", Context.MODE_PRIVATE); 
Editor editor = preferences.edit(); 
editor.putString("name", name); 
editor.putString("password", pwd); 
editor.commit(); 
} 
public Map<String, String> read(){ 
Map<String, String> map = new HashMap<String, String>(); 
preferences = context.getSharedPreferences("temp", Context.MODE_PRIVATE); 
map.put("name", preferences.getString("name", "isEnmpty")); 
map.put("password", preferences.getString("password", "isEnmpty")); 
return map; 
} 
}
 
该文章在 2013/2/25 23:27:18 编辑过