2016-12-07 3 views
1

Ich habe gerade auf AppCompat v23 aktualisiert und finde, dass setSupportProgressBarIndeterminateVisibility veraltet ist. Ich bin jedoch nicht in der Lage, herauszufinden, was die Alternative ist, die Dokumentation scheint sehr dünn zu sein.Alternative für AppCompat setSupportProgressBarIndeterminateVisibility für AppCompat v23

Bitte lassen Sie mich wissen, wenn es eine Alternative gibt, die mir helfen kann, die ProgressBar auf SupportActionBar zu zeigen, und wenn ja wie. Schätze deine Hilfe.

+1

Vielleicht ist es schlank, weil * Fortschrittsbalken sind nicht mehr vorgesehen in AppCompat *, das, was die API doc sagt –

+0

Sie in benutzerdefinierten Fortschrittsbalken Bibliotheken in Ihre Symbolleiste bauen könnten Ansichten. http://StackOverflow.com/a/26546576/2308683 –

+0

Ja, ich sah diese Notiz nach dem Posten dieser Frage. Vielen Dank. –

Antwort

3

Sie müssen Toolbar statt SupportActionBar verwenden.

Fügen Sie die ProgressBar in die Toolbar wie im folgenden Beispiel.

<android.support.v7.widget.Toolbar 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/toolbar" 
    android:layout_height="wrap_content" 
    android:layout_width="match_parent" 
    android:minHeight="?attr/actionBarSize" 
    android:background="?attr/colorPrimary"> 

    <ProgressBar 
     android:id="@+id/progress_spinner" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="end" 
     android:indeterminate="true" 
     android:visibility="gone" /> 

</android.support.v7.widget.Toolbar> 

Und dann in Ihrem AppCompatActivity finden ProgressBar nach dem Toolbar Abrufen und die ProgressBar sichtbar oder unsichtbar gesetzt, wenn Sie es brauchen.

protected void onCreate(Bundle savedInstanceState) 
{ 
    setContentView(R.layout.toolbar); 

    mToolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(mToolbar); 

    progressBar = (ProgressBar) findViewById(R.id.progress_spinner); 

    //Make progress bar appear when you need it 
    progressBar.setVisibility(View.VISIBLE); // OR Use View.INVISIBLE to Make progress bar disappear 
} 

this helps :)

+0

Vielen Dank, wird überprüft! –

Verwandte Themen