我有这个笔记,用户可以在文本框中键入他想要的内容。但即使用户退出应用程序,我也希望文本仍然存在。我如何在notes.java代码中应用onSavedInstantState和RestoreinstantState?
public class notes extends Activity{
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.notes);
Button wg = (Button) findViewById(R.id.button3);
wg.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent intent = new Intent();
setResult(RESULT_OK, intent);
finish();
}
});
}
}
答案 0 :(得分:0)
除onRetainNonConfigurationInstance()(不推荐使用)之外另一种保存状态的方法是onSaveInstanceState
onSaveInstanceState,它的关联方法是挂钩,告诉你正在发生的事情,你可能想要保存/恢复。这些通常称为配置更改,但如果应用程序被android关闭也会发生。
您可以像使用onCreate一样覆盖这些方法:
@Override
public void onSaveInstanceState(Bundle bundle)
{
//Now you must either save it to memory, the db, a preference, or somwhere else
bundle.putSerializable("some key", objectToSave);
super.onSaveInstanceState(bundle);
}
然后你可以通过传入的包中的方式将该对象放回onCreate。
如果应用退出,您需要做的不仅仅是将其保存到捆绑包中。你必须在其他地方坚持下去,并在需要时手动加载它。