Jestem zdezorientowany, jeśli chodzi o ratowanie stanu. Więc wiem, że onSaveInstanceState(Bundle)jest to wywołane, gdy działalność ma zostać zniszczona. Ale w jaki sposób przechowujesz w nim swoje informacje i przywracasz je do pierwotnego stanu onCreate(Bundle savedInstanceState)? Nie rozumiem, jak ten pakiet przywróci informacje. Byłoby pomocne, gdyby ktoś mógł podać przykład. Przewodnik dla programistów nie wyjaśnia tego dobrze.
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);
}
}