2016-07-29 18 views
2

Ich habe ein Layout XMl wie folgen aus:Progressbar unten Toolbar in CoordinatorLayout

<CoordinatorLayout> 
    <AppBarLayout> 
     <CollapsingToolbarLayout> 
      <RelativeLayout/> 
      <Toolbar/> 
     </CollapsingToolbarLayout> 
    </AppBarLayout> 
    <RecyclerView/> 
</CoordinatorLayout> 

ich unterhalb der Symbolleiste nur eine horizontale progressbar hinzufügen möge, und über dem Recycler im Hinblick auf Datenladen für Recycler Ansicht Elemente anzuzeigen.

Mit einem relativen Layout hätte ich einfach eine android: layout_below Eigenschaft für Fortschrittsbalken unterhalb der Aktionsleiste zur Verfügung gestellt. Aber ich bin neu in Coordinator Layout und Toolbar und kann die Ergebnisse nicht erhalten.

Antwort

1

Wenn Sie ProgressBar mit Toolbar Wrap Toolbar innen LinearLayout und ProgressBar als erstes Kind dieses LinearLayout setzen verbergen. Vergeben

orientation="vertical" 

Wenn Sie ProgressBar möchten immer sichtbar sein, dann wickeln RecyclerView innen LinearLayout und setzen ProgressBar als erstes Kind. Stellen Sie die Ausrichtung ein.

app:layout_behavior="@string/appbar_scrolling_view_behavior" 

als Paramter von LinearLayout hinzufügen Merken (Es muss die Scrollen an das Kind weitergeben)

1
<CoordinatorLayout> 
    <AppBarLayout> 
     <CollapsingToolbarLayout> 
      <RelativeLayout/> 
      <Toolbar/> 
     </CollapsingToolbarLayout> 
    </AppBarLayout> 
    <LinearLayout> 
     <ProgressBar> 
     <RecyclerView/> 
    </LinearLayout> 
</CoordinatorLayout> 

Das oben genannte sollte für das funktionieren, was Sie wollen. Stellen Sie sicher, dass die Ausrichtung im linearen Layout vertikal ist. Die einzige Einschränkung besteht darin, dass bei einer großen Recycler-Ansicht das lineare Layout möglicherweise in einer Ansichtsnavigationsansicht umbrochen werden muss, vorausgesetzt, dass die Fortschrittsanzeige ebenfalls gescrollt werden soll.