`

SharedPreferences 操作

 
阅读更多
  1. public class SPActivity extends Activity {  
  2.      
  3.     /**使用SharedPreferences 来储存与读取数据**/  
  4.     SharedPreferences mShared = null;  
  5.   
  6.     /**程序中可以同时存在多个SharedPreferences数据, 根据SharedPreferences的名称就可以拿到对象**/  
  7.     public final static String SHARED_MAIN = "main";  
  8.      
  9.     /**SharedPreferences中储存数据的Key名称**/  
  10.     public final static String KEY_NAME = "name";  
  11.     public final static String KEY_NUMBER = "number";  
  12.       
  13.     /**SharedPreferences中储存数据的路径**/  
  14.     public final static String DATA_URL = "/data/data/";  
  15.     public final static String SHARED_MAIN_XML = "main.xml";  
  16.       
  17.       
  18.     @Override  
  19.     protected void onCreate(Bundle savedInstanceState) {  
  20.     setContentView(R.layout.sharedpreferences);  
  21.     /**拿到名称是SHARED_MAIN 的SharedPreferences对象**/  
  22.     mShared = getSharedPreferences(SHARED_MAIN, Context.MODE_PRIVATE);  
  23.     /**拿到SharedPreferences中保存的数值 第二个参数为如果SharedPreferences中没有保存就赋一个默认值**/  
  24.     String name = mShared.getString(KEY_NAME, "数据库中没有储存姓名");  
  25.     String number = mShared.getString(KEY_NUMBER, "数据库中没有储存号码");  
  26.       
  27.     final EditText editName = (EditText)findViewById(R.id.sp_et0);  
  28.     final EditText editNumber = (EditText)findViewById(R.id.sp_et1);  
  29.     editName.setHint("上次输入的姓名为【 " +name+"】");  
  30.     editNumber.setHint("上次输入的号码为【 " +number+"】");  
  31.       
  32.     Button button0 = (Button)findViewById(R.id.sp_button0);  
  33.       
  34.     /**监听按钮点击后保存用户输入信息到SharedPreferences中**/  
  35.     button0.setOnClickListener(new  OnClickListener() {  
  36.           
  37.         @Override  
  38.         public void onClick(View arg0) {  
  39.         /**拿到用户输入的信息**/  
  40.         String name = editName.getText().toString();  
  41.         String number = editNumber.getText().toString();  
  42.         /**开始保存入SharedPreferences**/  
  43.         Editor editor = mShared.edit();  
  44.         editor.putString(KEY_NAME, name);  
  45.         editor.putString(KEY_NUMBER, number);  
  46.         /**put完毕必需要commit()否则无法保存**/  
  47.         editor.commit();  
  48.         ShowDialog("保存SharedPreferences成功");  
  49.           
  50.         }  
  51.     });  
  52.       
  53.     Button button1 = (Button)findViewById(R.id.sp_button1);  
  54.     button1.setOnClickListener(new  OnClickListener() {  
  55.           
  56.         @Override  
  57.         public void onClick(View arg0) {  
  58.         /**开始清除SharedPreferences中保存的内容**/  
  59.         Editor editor = mShared.edit();  
  60.         editor.remove(KEY_NAME);  
  61.         editor.remove(KEY_NUMBER);  
  62.         //editor.clear();   
  63.         editor.commit();  
  64.         ShowDialog("清除SharedPreferences数据成功");  
  65.         }  
  66.     });  
  67.       
  68.     Button button2 = (Button)findViewById(R.id.sp_button2);  
  69.     button2.setOnClickListener(new OnClickListener() {  
  70.   
  71.         @Override  
  72.         public void onClick(View arg0) {  
  73.         /** 删除SharedPreferences文件 **/  
  74.         File file = new File(DATA_URL + getPackageName().toString()  
  75.             + "/shared_prefs", SHARED_MAIN_XML);  
  76.         if (file.exists()) {  
  77.             file.delete();  
  78.         }  
  79.         ShowDialog("删除SharedPreferences文件成功");  
  80.         }  
  81.     });  
  82.       
  83.       
  84.     super.onCreate(savedInstanceState);  
  85.     }  
  86.   
  87.     public void ShowDialog(String string) {  
  88.     AlertDialog.Builder builder = new AlertDialog.Builder(SPActivity.this);  
  89.     builder.setIcon(R.drawable.icon);  
  90.     builder.setTitle(string);  
  91.     builder.setPositiveButton("确定"new DialogInterface.OnClickListener() {  
  92.         public void onClick(DialogInterface dialog, int whichButton) {  
  93.         finish();  
  94.         }  
  95.     });  
  96.     builder.show();  
  97.     }  
  98. }  
 
  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"  
  4.     android:layout_width="fill_parent"   
  5.     android:layout_height="fill_parent"  
  6.     android:orientation="vertical"  
  7.     >  
  8.     <ImageView android:id="@+id/sp_image"  
  9.         android:layout_width="wrap_content"  
  10.          android:layout_height="wrap_content"  
  11.         android:src="@drawable/image"  
  12.         android:layout_gravity="center"  
  13.         />  
  14.     <EditText android:id="@+id/sp_et0"  
  15.               android:layout_width="fill_parent"  
  16.               android:layout_height="wrap_content"  
  17.               android:hint="请输入你的姓名">  
  18.     </EditText>  
  19.     <EditText android:id="@+id/sp_et1"  
  20.               android:layout_width="fill_parent"  
  21.               android:layout_height="wrap_content"  
  22.               android:hint="请输入你的号码">  
  23.     </EditText>  
  24.     <Button   android:id="@+id/sp_button0"  
  25.               android:layout_width="wrap_content"  
  26.               android:layout_height="wrap_content"  
  27.               android:text="保存输入内容shared">  
  28.     </Button>  
  29.     <Button   android:id="@+id/sp_button1"  
  30.               android:layout_width="wrap_content"  
  31.               android:layout_height="wrap_content"  
  32.               android:text="清除shared保存内容">  
  33.     </Button>  
  34.     <Button   android:id="@+id/sp_button2"  
  35.               android:layout_width="wrap_content"  
  36.               android:layout_height="wrap_content"  
  37.               android:text="删除shared文件">  
  38.     </Button>  
  39. </LinearLayout>  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics