2017-08-05 1 views
0

Ich entwickle eine Xamarin App und ich habe ein Fragment und ich möchte eine ProgressDialog in Fragment AsyncTask anzeigen.ProgressDialog in C# Xamarin Fragment

Ich weiß nicht, wie Kontext während der Deklaration geben progressDialog.

pDialog = new ProgressDialog(context);//GET ACTIVITY IN WHICH IS FRAGMENT HERE 

pDialog.SetMessage("Downloading file. Please wait..."); 
pDialog.Indeterminate = false; 
pDialog.Max = 100; 

pDialog.SetProgressStyle(ProgressDialogStyle.Horizontal); 
pDialog.SetCancelable(true); 

pDialog.Show(); 

Ich weiß nicht, wie Kontext zu übergeben, da progressDialog in Fragmente der Asynchron-Klasse ist.

Antwort

0

In einem Fragment können Sie auf die "Eltern" -Aktivität zugreifen, indem Sie einfach this.Activity aufrufen. Zum Beispiel von meinem Fragment Ich nenne einfach:

var progressDialog = new ProgressDialog(this.Activity, Resource.Style.Theme_AppCompat_Light_Dialog); 

Wenn Sie es von Ihrem AsyncTask Klasse erstellen möchten geschickt nur die Aktivität des Fragments in die Klasse auf den Konstruktor übergeben, es als Eigenschaft der Klasse speichern und dann Verwenden Sie es, wenn es Zeit ist, den ProgressDialog zu erstellen.

Verwandte Themen