Sto utilizzando una vista titolo personalizzata e vorrei mostrare/nascondere una barra di avanzamento nella vista Titolo quando un thread sta funzionando.Android - utilizzo di runOnUiThread per eseguire modifiche all'interfaccia utente da una discussione
Questo è XML di mio avviso titolo
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/image_left_btn"
android:layout_width="75dip"
android:layout_height="wrap_content"
android:text="Back"
/>
<TextView
android:id="@+id/image_title_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:textSize="20dip"
android:textStyle="bold"
android:textColor="#fff"
android:layout_gravity="center"
android:gravity="center"
android:paddingLeft="8dip"
android:paddingRight="8dip"
/>
<ProgressBar
android:id="@+android:id/progress_small_title"
style="?android:attr/progressBarStyleSmall"
android:layout_width="75dip"
android:layout_height="wrap_content"
android:paddingRight="8dip"/>
</LinearLayout>
nella mia attività, dopo aver impostato questo come la barra del titolo personalizzato, faccio questo
titleProgress = (ProgressBar)findViewById(R.id.progress_small_title);
titleProgress.setVisibility(View.INVISIBLE);
dove titleProgress è oggetto ProgressBar.
Questo è quello che faccio nel mio thread
runOnUiThread(new Runnable() {
public void run() {
titleProgress.setVisibility(View.VISIBLE);
}
});
//long operation here
runOnUiThread(new Runnable() {
public void run() {
titleProgress.setVisibility(View.INVISIBLE);
}
});
ma non v'è alcun cambiamento alla barra di avanzamento. Non viene mai visualizzato Qualcuno può dirmi cosa c'è di sbagliato nel codice?
È possibile visualizzare la barra di avanzamento del titolo in un titolo personalizzato?
Grazie.
Già provato i primi due ma non ha aiutato! E io sono disperato, quindi immagino che chiami per 3? ;) – lostInTransit
L'opzione 3) è la soluzione migliore per tutti i problemi ... LOL – Rodrigo