• 安卓SharedPreferences的使用


      

    安卓中的SharedPreferences可以用来保存一些很小的数据,比如一个应用的账户信息等,我们的QQ登录中记住账号和密码这个功能就是通过这个实现的。这里不讲简介这些,就记录一下怎么进行使用

    实现步骤:

    • 通过Context获取sharedPreferences对象
    • 通过editor()方法获取Editor对象
    • 通过Editor对象对键值对数据进行增加删除等操作
    • 通过commit()方法提交数据

    以上四个步骤,如果只是获取数据,只要第一步获取了sharedPreferences对象就可以通过调用方法获取数据了。后面三个步骤是储存、删除数据时需要实现的

    先上简单的实现效果:

    布局比较简单,略过了。

    下面是java实现的代码

    package com.contentprovide.liuliu.shard;
    
    import android.content.SharedPreferences;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.TextView;
    
    public class MainActivity extends AppCompatActivity {
    
    
        Button save_btn,get_btn;
        EditText et;
        TextView tv;
    
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            save_btn = (Button) findViewById(R.id.save_btn);
            get_btn = (Button) findViewById(R.id.get_btn);
            et = (EditText) findViewById(R.id.et);
            tv = (TextView) findViewById(R.id.tv);
    
    
            save_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
    //                获取输入框里的内容
                    String s = et.getText().toString();
    //                获取sharedPreferences对象
                    SharedPreferences sharedPreferences = MainActivity.this.getSharedPreferences("Myshard",MainActivity.this.MODE_PRIVATE);
    //                通过Editor对象对数据进行操作
                    SharedPreferences.Editor editor = sharedPreferences.edit();
                    editor.putString("usename",s);
                    editor.commit();
                }
            });
    
            get_btn.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    String s = "";
                    SharedPreferences sharedPreferences = MainActivity.this.getSharedPreferences("Myshard",MainActivity.this.MODE_PRIVATE);
    //                获取数据因为不需要对数据进行更改,所以不需要Editor对象,可以用sharedPreferences进行获取
                    s = sharedPreferences.getString("usename","默认数据");
                    tv.setText(s);
                }
            });
    
    
        }
    }

    Shardprefences本身是个借口,所以无法直接创建对象, 只能通过Context提供的getSharedPrederences()方法来获取对象。
    第一个参数是自定义的名字,第二个参数是是指明该SharedPrefences数据只能被本应用程序读写,还有另外两个模式因为不推荐使用,就不记录了
    getSharedPreferences("Myshard",MainActivity.this.MODE_PRIVATE);

    储存数据主要使用的方法:主要通过键值对的方法进行储存,第一个参数是key,第二个参数是需要储存的内容

    putString("","");

    putint("","");

    pubBooean("","");

    获取数据主要使用的方法:主要通过键值对的方法进行获取,第一个参数是key,第二个默认数据,在没有获取到数据的情况下显示该默认数据:

    getString("","");

    getint("","");

    getBooean("","");

  • 相关阅读:
    计算任意两个日期的间隔天数
    题目标题: 排它平方数
    历届试题 剪格子
    历届试题 翻硬币
    C语言中%d,%o,%f,%e,%x的意义
    历届试题 买不到的数目
    九度 OJ1008 hdu 3790
    南洋理工 OJ 115 城市平乱 dijstra算法
    蓝桥杯 错误票据 原创代码+思路
    历届试题 连号区间数
  • 原文地址:https://www.cnblogs.com/lyd447113735/p/8719174.html
Copyright © 2020-2023  润新知