如果用户单击按钮,会出现一个对话框,要求输入一个字符串,并且在同一个对话框中有一个“确定”按钮,当用户按下该按钮时,对话框应该关闭。这至少是计划,问题是:将事件处理程序添加到“确定”按钮后,当用户打开对话框时,我的应用程序会冻结。关闭对话框,当按下确定按钮时
addNewFamButton = FindViewById<Button>(Resource.Id.newFamilyButton);
addNewFamButton.Click += (sender, e) => {
Dialog dialog = new Dialog(this);
dialog.SetContentView(Resource.Layout.addNewFamily);
dialog.SetTitle("Add new family to the list");
dialog.Show();
// Problem starts here:
Button saveNewFamily = FindViewById<Button>(Resource.Id.dialogButtonOK);
saveNewFamily.Click += (object o, EventArgs ea) => { dialog.Dispose(); };
};
我试着用dialog.Cancel(),但我得到了相同的结果。如果我删除了最后两行,那么对话框可以正常工作,但显然不会关闭。
固定:感谢user370305了简单的解决方案:
Button saveNewFamily = dialog.FindViewById<Button>(Resource.Id.dialogButtonOK);
这是我的尴尬问题的解决方案。 – hungariandude