web-dev-qa-db-ja.com

Xamarin.Forms.Navigation.PopAsync()がページをポップしない

Xamarin.Formsで、Navigation.PopAsync()を使用すると、iOSでページがポップされません。

PopAsync()の後、同じページが残ります。

10
Chetan Rawat

適切なポップメソッドを呼び出す

Navigation.PushAsync()を使用してページをナビゲーションスタックにプッシュした場合は、Navigation.PopAsync()を使用してページをナビゲーションスタックからポップします。

Navigation.PushModalAsync()を使用してページをナビゲーションスタックにプッシュした場合は、Navigation.PopModalAsync()を使用してページをナビゲーションスタックからポップします。

BeginInvokeOnMainThreadを使用する

すべてのUI更新は、メインスレッドで実行する必要があります。このリクエストがメインスレッドで発生していることを確認するには、BeginInvokeOnMainThreadを使用します。

Device.BeginInvokeOnMainThread(async () => await Navigation.PopAsync());

または

Device.BeginInvokeOnMainThread(async () => await Navigation.PopModalAsync());
17
Brandon Minnick