如何在SharedPreferences中传递EditText值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在SharedPreferences中传递EditText值相关的知识,希望对你有一定的参考价值。
main activity.Java
EditText t=(EditText)findViewById(R.id.editText);
String str=t.getText().toString();
this.getSharedPreferences("mp",
Context.MODE_PRIVATE).edit().putString("pt",str).apply();
receiver.Java
TextView t= (TextView) findViewById(R.id.tv);
String s = this.getSharedPreferences("mp", Context.MODE_PRIVATE).getString("pt","");
t.setText(s);
在这种情况下,当我直接传递字符串值而不是EditText
数据时,它运行良好。请修复哪里出错了。提前致谢
答案
你在onCreate
函数中调用了这些函数。你应该把主题放在按钮的监听器中
button.setOnClickListener(new View.OnClickListener {
@Override
private void onClick(View view){
// get text from EditText
// put text to SharedPreferences
}
});
应用程序启动时,EditText
中没有任何内容。
以上是关于如何在SharedPreferences中传递EditText值的主要内容,如果未能解决你的问题,请参考以下文章
使用集合调用构造函数类并从 asyncTask 获取 sharedpreferences(无法传递上下文)
安卓sharedpreferences怎么存储double类型
如何在颤振中创建 SharedPreferences 的 Singleton 类
如何在 ViewModel 中访问 SharedPreferences?