0
我有一个与Xamarin编写的需要从无法良好访问活动或上下文的类进行通知的Android应用程序,所以我正在使用系统警报对话框来显示消息。AlertDialog简要显示并消失
在Android 4.4中,弹出窗口出现,用户必须点击确定按钮清除它。屏幕的其余部分变暗,用户无法与任何其他UI元素进行交互,直到弹出窗口被清除。这是所需的行为。
在Android 5.0(在Galaxy S6和平板电脑上测试)中,弹出窗口将显示约一秒钟,然后消失,无需进行任何交互。我做了一些Google搜索和SO搜索无济于事。
private static void ShowSystemAlert(Context context, string message)
{
var dialog = new AlertDialog.Builder(context, Android.Resource.Style.ThemeHoloLightDialog)
.SetNeutralButton("OK", (alertSender, args) => {})
.SetMessage(message)
.Create();
dialog.SetCanceledOnTouchOutside(false);
dialog.Window.SetType(WindowManagerTypes.SystemAlert);
dialog.Show();
dialog.Window.DecorView.SetBackgroundResource(Android.Resource.Color.Transparent); //remove strange small border around dialog
}
我怎样才能让弹出窗口像在Android 4.4中一样工作?最好的答案可以在棒棒糖,棉花糖和牛轧糖中使用。
我也非常感谢为什么会发生这种情况的解释,或者您可以给出的任何背景信息。谢谢!