为了账号安全,请及时绑定邮箱和手机立即绑定

请问如何使用onSavedInstanceState示例

请问如何使用onSavedInstanceState示例

弑天下 2019-07-26 16:19:25
请问如何使用onSavedInstanceState示例归结为拯救一个州,我很困惑。所以我知道onSaveInstanceState(Bundle)当活动即将被销毁时会被调用。但是,如何将信息存储在其中并将其恢复到原始状态onCreate(Bundle savedInstanceState)?我不明白这个捆绑包将如何恢复信息。如果有人可以提供一个例子,那将会很有帮助。开发指南没有很好地解释这一点。public class Conversation extends Activity {     private ProgressDialog progDialog;     int typeBar;     TextView text1;     EditText edit;     Button respond;     private String name;     private String textAtView;     private String savedName;     public void onCreate(Bundle savedInstanceState){         super.onCreate(savedInstanceState);         setContentView(R.layout.dorothydialog);         text1 = (TextView)findViewById(R.id.dialog);         edit = (EditText)findViewById(R.id.repsond);         respond = (Button)findViewById(R.id.button01);         if(savedInstanceState != null){             savedInstanceState.get(savedName);             text1.setText(savedName);         }         else{             text1.setText("Hello! What is your name?");             respond.setOnClickListener(new View.OnClickListener() {                 @Override                 public void onClick(View v) {                     name = edit.getText().toString();                     text1.setText("Nice to meet you "+ name);                 }                });         }     }     @Override     public void onSaveInstanceState(Bundle outState){         super.onSaveInstanceState(outState);         outState.putString(savedName, name);     }}
查看完整描述

3 回答

?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

所有新Android开发人员应该知道的一个主要注意事项是,只要您为其分配ID,Widgets(TextView,Buttons等)中的任何信息都将由Android自动保留。这意味着大多数UI状态都会得到解决而没有问题。只有当您需要存储其他数据时才会出现问题。

来自Android文档

您需要的唯一工作是为要保存其状态的每个小部件提供唯一的ID(带有android:id属性)。如果窗口小部件没有ID,则无法保存其状态


查看完整回答
反对 回复 2019-07-26
?
婷婷同学_

TA贡献1844条经验 获得超8个赞

一个很好的信息:你不需要在onCreate()方法中检查Bundle对象是否为null。使用onRestoreInstanceState()方法,系统在onStart()方法之后调用该方法。仅当存在要恢复的已保存状态时,系统才会调用onRestoreInstanceState(),因此您无需检查Bundle是否为null


查看完整回答
反对 回复 2019-07-26
  • 3 回答
  • 0 关注
  • 873 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信