1、首先获取SharedPreferences对象 通过getSharedPreferences()
方法获取
说明 在onCreate里获取不然可能会报空指针异常
普通类可以参考这篇文章
https://blog.csdn.net/MiaoHuiMing/article/details/51585805
final SharedPreferences sp = getSharedPreferences("user",MODE_PRIVATE);
//设置名称,和权限 名称会用来获取数据你可以理解为数据库中的数据库名或表名
2、获取数据
String user = sp.getString("userName",""); //第一个key,第二个默认值
3、保存
获取SharedPreferences.Editor对象
SharedPreferences.Editor editor = sp.edit();
editor.putString("userName", "123456");
editor.apply();
// apply() 是将修改的数据提交到内存,而后异步真正的提交到硬件磁盘。
完整示例代码
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 com.example.administrator.demolist.R;
/**
* 保存账号密码的功能
*/
public class SharedPreferencesActivity extends AppCompatActivity {
private EditText edtUser, edtPassword;
private Button btnObtain;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_shared_preferences);
initView();
initData();
}
private void initData() {
final SharedPreferences sp = getSharedPreferences("user", MODE_PRIVATE);
/**
* 获取
*/
String user = sp.getString("userName", "");
String password = sp.getString("userPassword", "");
edtUser.setText(user);
edtPassword.setText(password);
btnObtain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String userName = edtUser.getText().toString();
final String userPassword = edtPassword.getText().toString();
/**
* 保存
*/
SharedPreferences.Editor editor = sp.edit();
editor.putString("userName", userName);
editor.putString("userPassword", userPassword);
editor.apply();
// apply() 是将修改的数据提交到内存,而后异步真正的提交到硬件磁盘。
}
});
}
private void initView() {
edtUser = findViewById(R.id.edt_user);
edtPassword = findViewById(R.id.edt_password);
btnObtain = findViewById(R.id.btn_Obtain);
}
}