2016-08-16 27 views
8

utworzył okrągły pasek postępu, który działa dobrze z animacją. ale podczas próby wyświetlenia go przy użyciu dynamicznego paska postępu danych nie aktualizuje się.Pasek postępu okólnika xamarin - Android

poniższy kod działa

progrssBarObj = FindViewById<ProgressBar>(Resource.Id.progressBarSync); 

    ObjectAnimator animation = ObjectAnimator.OfInt(progrssBarObj, "progress", 0, 100); // see this max value coming back here, we animale towards that value 
    animation.SetDuration(3000); //in milliseconds 
    animation.SetInterpolator(new DecelerateInterpolator()); 
    animation.Start(); 

i kod AXML jest

<ProgressBar 
      style="?android:attr/progressBarStyleHorizontal" 
      android:layout_column="2" 
      android:id="@+id/progressBarSync" 
      android:layout_width="300dp" 
      android:layout_height="300dp" 
      android:progressDrawable="@drawable/circular_progress_bar" 
      android:background="@drawable/progress_bar_background" /> 

Ale kiedy próbowałem coś w pętli pasek postępu nie jest aktualizowanie z danymi. Zasadniczo pasek postępu nie aktualizuje się w kółko.

  for (int i = 0; i <= 100; i++) 
      { 
       int cnt = 0; 
       cnt = cnt + i; 
       progrssBarObj.Progress = cnt; 

      } 

Każda pomoc zostanie doceniona.

Odpowiedz

6

Ciągle wewnątrz pętli for w nowym zadaniem i zrobiło pracował

await Task.Run(() => 
{ 
    for (int i = 0; i < dtITM.Rows.Count; i++) 
    { 
    int cnt = 0; 
    cnt = cnt + i; 
    progrssBarObj.Progress = cnt; 
    } 
}