如何在SharedPreferences中传递EditText值

时间:2017-12-30 11:48:54

标签: android sharedpreferences textview

MainActivity.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数据时,它运行良好。 请修复哪里出错了。 提前致谢

1 个答案:

答案 0 :(得分:1)

您在onCreate函数中调用了这些函数。你应该把主题放在一个按钮的监听器

button.setOnClickListener(new View.OnClickListener {
    @Override
    private void onClick(View view){
        // get text from EditText
        // put text to SharedPreferences
    }
});

应用程序启动时,EditText中没有任何内容。