如何将onSavedInstantState应用于此java代码?

如何将onSavedInstantState应用于此java代码?,java,android,textbox,Java,Android,Textbox,我有一个记录笔记的应用程序,用户可以在文本框中输入任何他想要的内容。但我也希望即使用户退出应用程序,文本仍然存在。如何在notes.java代码中应用onSavedInstantState和RestoreinstantState public class notes extends Activity{ /** Called when the activity is first created. */ public void onCreate(Bundle savedInstan

我有一个记录笔记的应用程序,用户可以在文本框中输入任何他想要的内容。但我也希望即使用户退出应用程序,文本仍然存在。如何在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();
            }

        });



    }
}

除了OnRetainOnConfiguration实例之外,另一种保存状态的方法是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);
}
然后,您可以通过传入的bundle将该对象返回onCreate


如果应用程序退出,您将需要做的不仅仅是将其保存到捆绑包中。您必须将其保存到其他地方,并在需要时手动将其加载回。

尝试以下操作:[[1]:对于要保存的对象,我应该用什么替换它?任何可序列化的类都会实现java.io.Serializable。该类应该包含要保存在内存中的所有内容,以便进行配置更改(如屏幕旋转)。所以我只需执行此操作?一些键可序列化,我不明白抱歉:/假设您要保存some字符串和数字…创建一个类…公共类MyStuffToSave实现可序列化{String s1;String s1,int i1;}然后将要保存的内容分配给该类,并将其作为putSerializable中的第二个参数传递。