Я новичок в Xamarin Android. У меня есть активность, и при нажатии на текст отображается предупреждение. Код AlertDialog:
textView1.Click += (sender, e) =>
{
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.SetTitle("title");
alert.SetMessage("Message");
alert.SetCancelable(false);
alert.SetPositiveButton("Cerrar Sesión", delegate { funcCerrarSesion(); });
alert.SetNegativeButton("Salir", delegate { Finish(); });
alert.SetNeutralButton("Volver", delegate { });
RunOnUiThread(() =>
{
alert.Show();
});
};
Мне нужно, чтобы при нажатии кнопки «Назад» это событие закрывало AlertDialog. Благодарю вас.
PD: я разрабатываю Visual Studio 2012 + подключаемый модуль Xamarin.
Редактирование (ρяσѕρєя K's Solution):
Dialog dialog;
protected override void OnCreate(Bundle bundle)
{
..
textView1.Click += (sender, e) =>
{
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.SetTitle("Advertencia");
alert.SetMessage("Está seguro?");
alert.SetCancelable(false);
alert.SetPositiveButton("Cerrar Sesión", delegate { funcCerrarSesion(); });
alert.SetNegativeButton("Salir", delegate { Finish(); });
alert.SetNeutralButton("Volver", delegate { });
RunOnUiThread(() =>
{
dialog = alert.Create();
dialog.Show();
});
};
...
}
public override void OnBackPressed()
{
if (dialog != null)
{
if (dialog.IsShowing)
{
dialog.Dismiss();
}
else
{
base.OnBackPressed();
}
}
else
{
base.OnBackPressed();
}
}
Это продолжает показывать оповещение, но при нажатии back button
оповещение не закрывается.