XamarinとC#を使ってアンドロイドアプリをビルドしています。 アプリはrestsharpを使用して自分のサーバーに接続し、必要な情報を引き出します。Xamarin - async/awaitとProgressDialogの使用
私は登録ページを作成しようとしています。ユーザーが存在するかどうかを確認したいと思います。 ユーザーがProgressDialogを見ている間、これをバックグラウンドで実行したいと思います。
if (!string.IsNullOrEmpty(PhoneNumber) && !string.IsNullOrEmpty(Password)
&& !string.IsNullOrEmpty(LicenceId) && LicenceImage.Length > 1)
{
ProgressDialog mDialog = new ProgressDialog(this);
mDialog.SetMessage("Loading data...");
mDialog.SetCancelable(false);
mDialog.Show();
bool checkExistance = await api.CheckIfExist(PhoneNumber);
if (checkExistance)
{
Android.Support.V7.App.AlertDialog.Builder alert = new Android.Support.V7.App.AlertDialog.Builder(this);
alert.SetTitle("");
}
else
{
Intent intent = new Intent(this, typeof(RegisterDone));
StartActivity(intent);
}
}
ProgressDialogショーが、何もhappednsより:
は、これは私のコードです。 私は他の方法でそれをやろうとしましたが、それでもまだ仕事をしていました。
これを行うにはどのような方法がありますか? Thxを事前に
それは新しいスレッドを作成し、UIスレッドにする必要がありますダイアログを変更するよう、非同期の用心。 – rmjoia
'api.CheckIfExist(PhoneNumber);'が実行されているかどうかを確認するためにブレークポイントを使ってみましたか? –
はい、thiaメソッドが実行され、boolが返されます。問題は、サーバーが結果を返す後に何も起こらないということです。 –