Android SharedPreferences的简单使用

不解释直接上代码

工程下载

详细说明请见 官方文档

 1)写入数据:
     //步骤1:创建一个SharedPreferences对象
     SharedPreferences sharedPreferences= getSharedPreferences("data",Context.MODE_PRIVATE);
     //步骤2: 实例化SharedPreferences.Editor对象
     SharedPreferences.Editor editor = sharedPreferences.edit();
     //步骤3:将获取过来的值放入文件
     editor.putString("name", “Tom”);
     editor.putInt("age", 28);
     editor.putBoolean("marrid",false);
     //步骤4:提交               
     editor.commit();


 2)读取数据:
     SharedPreferences sharedPreferences= getSharedPreferences("data", Context .MODE_PRIVATE);
     String userId=sharedPreferences.getString("name","");

3)删除指定数据
     editor.remove("name");
     editor.commit();


4)清空数据
     editor.clear();
     editor.commit();

MainActivity:

 private TextView tv_show_text;
    private Button btn_Save, btn_Read, btn_DeleteAll;
    private SharedPreferences sharedPreferences;
    SharedPreferences.Editor editor;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tv_show_text = findViewById(R.id.tv_show);
        btn_Save = findViewById(R.id.btn_Save);
        btn_Read = findViewById(R.id.btn_Read);
        btn_DeleteAll = findViewById(R.id.btn_Delete);

        btn_Read.setOnClickListener(this);
        btn_Save.setOnClickListener(this);
        btn_DeleteAll.setOnClickListener(this);
    }


    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_Save:
                sharedPreferences = getSharedPreferences("data", Context.MODE_PRIVATE);
                editor = sharedPreferences.edit();

                editor.putString("name", "Tom");
                editor.putInt("age", 28);
                editor.putBoolean("marrid", false);

                editor.commit();
                Toast.makeText(this, "写入成功", Toast.LENGTH_SHORT).show();
                break;
            case R.id.btn_Read:
                sharedPreferences = getSharedPreferences("data", Context.MODE_PRIVATE);
                String userId = sharedPreferences.getString("name", "");
                int userAge = sharedPreferences.getInt("age", 0);
                tv_show_text.setText("数据:\n" + "ID: " + userId + "\nAge: " + userAge);

                Toast.makeText(this, "读取成功", Toast.LENGTH_SHORT).show();
                break;
            case R.id.btn_Delete:
                editor = sharedPreferences.edit();
                editor.clear();
                editor.commit();

                tv_show_text.setText("");
                Toast.makeText(this, "删除成功", Toast.LENGTH_SHORT).show();
                break;
        }
    }

Layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:id="@+id/tv_show"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="6"
        android:gravity="center"
        android:text="Hello World!" />

    <Button
        android:id="@+id/btn_Save"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginTop="20dp"
        android:layout_weight="1"
        android:background="#1298FF"
        android:text="存储"
        android:textColor="#FFF"
        android:textSize="25sp" />

    <Button
        android:id="@+id/btn_Read"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginTop="20dp"
        android:layout_weight="1"
        android:background="#1298FF"
        android:text="读取"
        android:textColor="#FFF"
        android:textSize="25sp" />

    <Button
        android:id="@+id/btn_Delete"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_marginTop="20dp"
        android:layout_weight="1"
        android:background="#1298FF"
        android:text="删除所有数据"
        android:textColor="#FFF"
        android:textSize="25sp" />

</LinearLayout>

原作者链接

发布了5 篇原创文章 · 获赞 3 · 访问量 1473

猜你喜欢

转载自blog.csdn.net/weixin_42968584/article/details/104056550