我发现很多关于如何保存对话状态的主题,例如使用Bundle实例。 但是,我似乎无法找到如何“正确”重置对话框。重置Android对话框
考虑这个样定制对话框(在XML布局携带ID为一个EditText“INPUT_TEXT”):
public class CustomDialog extends Dialog {
public CustomDialog (Context context) { super (context); }
protected onCreate (Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
setContentView(R.layout.input_query);
EditText txt = (EditText) findViewById(R.id.input_text);
// Consider that I'm declaring here the use of listeners
// in order to retrieve input text.
}
}
时被点击的主要活动的按钮,我弹出此对话框。第二次这个动作发生时,我的EditText包含前一个实例的输入。
现在,我知道我可以重置此EditText的内容,但我想知道是否有一个常见的,已经存在的方法来做到这一点,全对话。例如,如果我有一个更复杂的对话框,我希望它每次实例化该对象时都有“默认”值。我认为去掉super.onCreate(savedInstanceState);
的电话可以做到这一点,但事实并非如此。
对不起,如果这是一个愚蠢的问题(或者如果已经解决......我没有找到它)...任何帮助表示赞赏。非常感谢!
确实,开发指南完全说(http://developer.android.com/guide/topics/ui/dialogs.html#ShowingADialog):“If你没有定义'onPrepareDialog()',那么对话框将保持原来的打开状态。“非常感谢! – piwi
它非常感谢我。 –