SharedPreferences可以做到储存简单资料的功能,简单的应用像储存登入帐号的资料或者其他需要储存少量的资料的时候可以派上用场,如果资料量大的话就不建议使用了,今天就来讲讲它是怎麽储存资料的。
public class MainActivity extends AppCompatActivity {
SharedPreferences pref;
EditText account,password;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
account = (EditText) findViewById(R.id.account);
password = (EditText) findViewById(R.id.password);
}
//新增储存资料
public void sava(View v){
pref = getSharedPreferences("DATA",MODE_PRIVATE);
pref.edit()
.putString("NAME",account.getText().toString())
.putString("PHONE",password.getText().toString())
.apply(); //或commit()
}
//读取资料
public void read(View v){
pref = getSharedPreferences("DATA",MODE_PRIVATE);
account.setText(pref.getString("NAME",""));
password.setText(pref.getString("PHONE",""));
}
//清除EditTexts内容
public void clear(View v){
pref = getSharedPreferences("DATA",MODE_PRIVATE);
account.setText("");
password.setText("");
//下面程序码能清除所有资料
/*SharedPreferences.Editor editor = pref.edit();
editor.clear();
editor.commit();*/
}
}
可以看到在新增SharedPreferences资料最後有用到commit(),这里也可以使用apply(),主要差别在:
而取得资料的方法也大同小异,一样透过变数宣告并在getSharedPreferences(String name, int mode)输入相同的档名取得刚新增的档案,接者依要取出的资料型态get资料。最後展示出类似登入时记住帐密的效果。
今天的SharedPreferences就讲到这边,谢谢大家~
-DNSSEC 资源记录(来源:InfoBlox) DNSSEC使用数字签名确保DNS 数据的完整...
前言 那时候找不到完全符合需求的可以直接用或改,所以最後自己写了一个,供大家参考。 根据我爬文,要用...
因为电脑坏掉了,所以暂时没有截图 QQ Server Message Block (SMB) SMB...
前言 在上一章我们知道如何在一台机器上使用多张 GPU 来Training,这对我们 Train 大...
假如我们想增加的按钮用来清除form的资料,最快的方式是增加一个type=”reset”的按钮,这时...