【发布时间】:2015-02-17 16:06:45
【问题描述】:
所以我的问题可能被问了很多次,但我在互联网上的任何地方都找不到答案。
。我想要做的是使用 sharedprefeences 存储一个文本视图。
在我的第一堂课 (xp) 中,我将 textview 发送到另一堂课(反馈) 现在反馈正在接收文本视图,没有任何问题,但从未保存它。即使在关闭应用程序后,我如何将该文本视图存储在(反馈)类中??
这是打算使用 textview 的类
public class Xp extends Activity {
Button accept;
TextView textV;
TextView xbnum;
public static final String PREFS_NAME = "MyPrefsFile";
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.xp);
accept = (Button) findViewById(R.id.accept);
textV = (TextView) findViewById(R.id.textV);
xbnum = (TextView) findViewById(R.id.xpnum);
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value1 = extras.getString("intent_xp");
final String value = extras.getString("intent_extra");
SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
SharedPreferences.Editor edit = settings.edit();
edit.putString(PREFS_NAME, value);
edit.putString(PREFS_NAME,value1);
textV.setText(value);
xbnum.setText(value1);
edit.commit();
accept.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(Xp.this, feedback.class);
i.putExtra("intent_extra", textV.getText().toString());
startActivity(i);
finish();
}
});
}
}
}
这里是接收意图并保存文本视图的类(按原样)
public class feedback extends Activity {
TextView test1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.feedback);
test1 = (TextView) findViewById(R.id.test1);
Bundle extras = getIntent().getExtras();
if (extras != null) {
String value = extras.getString("intent_extra");
SharedPreferences settings = getSharedPreferences("intent_pref", 0);
SharedPreferences.Editor edit = settings.edit();
edit.putString("intent_pref",value);
test1.setText(value);
edit.apply();
}
}
}
班级正在接收课文,一切正常。只有当我关闭应用程序并打开它时,一切都会被清除..
【问题讨论】:
-
如果我对您的理解正确,您可能需要使用 general 共享首选项而不是特定于活动的首选项。
-
为什么使用不同的 SharedPreference 名称?除了保存价值之外,您的反馈活动还能做什么?您是否曾经从 SavedPreferences 检索值?
-
我将 sharedprefrences 命名为相同的名称,但仍然没有保存。现在我只希望它保存该值并在那里显示,稍后我将添加更多功能。
标签: java android android-intent sharedpreferences