当前位置:操作系统 > 安卓/Android >>

android学习笔记10--------------SharedPreferences实现软件参数的保存和获取

很多时候我们开发软件需要向用户提供软件参数设置功能,如电子书软件的背景颜色设置,喜好设置等。在Android的应用的使用SharedPreferences类来

保存软件设置参数非常方便。

使用SharedPreferences类保存数据,其实是将这些参数保存在xml文件中,文件存放在/data/data/包名/shared_prefs目录下:

 \

 

点击保存后,

 \

 

将test.xml导出,打开

 \

 

即为我们保存的数据。

点击读取按钮:

 \

 

读取正确。

代码:


[java]
import android.app.Activity; 
import android.content.Context; 
import android.content.SharedPreferences; 
import android.content.SharedPreferences.Editor; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 
 
public class SharedPreferencesActivity extends Activity 

    private EditText nameEditText; 
    private EditText ageEditText; 
    private Button   save; 
    private Button   read; 
    private Button   exit; 
    private TextView resulTextView; 
     
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main); 
         
        nameEditText=(EditText)findViewById(R.id.name); 
        ageEditText=(EditText)findViewById(R.id.age); 
        save=(Button)findViewById(R.id.save); 
        read=(Button)findViewById(R.id.read); 
        exit=(Button)findViewById(R.id.exit); 
        resulTextView=(TextView)findViewById(R.id.result); 
         
        save.setOnClickListener(listener); 
        read.setOnClickListener(listener); 
        exit.setOnClickListener(listener); 
         
    } 
     
    private OnClickListener listener=new OnClickListener() 
    {        
        @Override 
        public void onClick(View v) 
        { 
            Button button=(Button)v; 
            SharedPreferences sharedPreferences=SharedPreferencesActivity. 
            this.getSharedPreferences("test", Context.MODE_PRIVATE); 
            switch (button.getId()) 
            { 
                case R.id.save: 
                    String name=nameEditText.getText().toString(); 
                    String age=ageEditText.getText().toString();                                         
                    Editor editor=sharedPreferences.edit(); 
                    editor.putString("name", name); 
                    editor.putInt("age", Integer.parseInt(age)); 
                    editor.commit(); //内容提交  
                    Toast.makeText(SharedPreferencesActivity.this, "保存成功",  
                            Toast.LENGTH_SHORT).show(); 
                    break; 
                     
                case R.id.read: 
                    String namevalue= sharedPreferences.getString("name", "");//如果存在name返回name的值,如果不存在该元素,返回“”  
                    int agevalue= sharedPreferences.getInt("age", -1); 
                    resulTextView.setText("姓名是:"+namevalue+"\n"+"年龄是:"+agevalue); 
                    Toast.makeText(SharedPreferencesActivity.this, "读取成功",  
                            Toast.LENGTH_SHORT).show(); 
                    break; 
                     
                case R.id.exit: 
         &

补充:移动开发 , Android ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,