[英]Xamarin Forms Display Alert Disappear
我正在开发一个Xamarin Forms的应用程序,但是我注意到一个奇怪的行为,当我在Android(版本大于4.2.2)中显示警报时,如果我按下警报模式,警报会立即消失。 有什么方法可以防止这种情况吗? 我希望警报仅在用户选择时消失。
非常感谢
当在Android中显示对话框时,单击其外部取消是非常标准的。 要更改此行为,您需要在PCL中创建一个界面:
public interface ICustomAlert
{
void ShowAlert(string message);
}
在你的Android项目中创建实现(类似这样):
[assembly: Xamarin.Forms.Dependency (typeof (AndroidCustomAlert))]
public class AndroidCustomAlert : ICustomAlert
{
void ShowAlert(string message)
{
var builder = new AlertDialog.Builder(Xamarin.Forms.Forms.Context);
builder.SetMessage(message);
builder.SetPositiveButton("OK", (sender, args) => { });
builder.SetCancelable(false);
builder.Show();
}
}
注意SetCancelable(false)
。 这就是使得用户无法点击警报之外并使其消失的原因。
要使用它,请从依赖服务获取ICustomAlert并调用ShowAlert:
DependencyService.Get<ICustomAlert>().ShowAlert("Hello!");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.