DisplayAlert()在自定义布局中不显示

本文关键字:显示 布局 自定义 DisplayAlert | 更新日期: 2023-09-27 18:07:57

我在Xamarin.Forms中实现了自己的WrapLayout。现在,页面的构造函数中的DisplayAlert没有显示任何内容。

 public WrapLayoutExtendedPage()
 {
       InitializeComponent();
       wrapLayoutExtended.Children.Add(new CustomLabel() { Text = "Label 1 Test", WidthRequest = 500, BackgroundColor = Color.Green, Length = 3 });
       wrapLayoutExtended.Children.Add(new CustomEntry() { WidthRequest = 900, BackgroundColor = Color.Red, Length = 9, InsertBreakAfter = true });
       wrapLayoutExtended.Children.Add(new CustomLabel() { Text = "Label 2 Test", WidthRequest = 500, BackgroundColor = Color.Green, Length = 5 });
       wrapLayoutExtended.Children.Add(new CustomEntry() { WidthRequest = 900, BackgroundColor = Color.Red, Length = 7, InsertBreakAfter = true });
       DisplayAlert("TEST", "TEST", "OK");
}

没有例外什么的。我试着在UI线程上运行它:

Device.BeginInvokeOnMainThread(() =>
{
     DisplayAlert("TEST", "TEST", "OK");
});

不改变任何东西

DisplayAlert()在自定义布局中不显示

你需要await它,不应该调用构造函数

的例子:

public async void OnAppearing()
{
    await DisplayAlert("TEST", "TEST", "OK");
}