2016-05-21 7 views
1

Ich habe eine Anwendung entwickelt und meine Anforderung ist Einstellung Schaltfläche oben auf klicken.wie zu verbergen/show widget.AppBarLayout auf klicken in Android App

Unten ist der Code für meine Activity_main.xml,

Jede Verknüpfung Weg zu automatischen Verstecken und Zeigen des App-Leiste Layouts?

<android.support.design.widget.AppBarLayout 
    android:id="@+id/appbarlayout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:animateLayoutChanges="true" 
    android:theme="@style/AppTheme.AppBarOverlay"> 

    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/AppTheme.PopupOverlay" /> 

</android.support.design.widget.AppBarLayout> 

<include layout="@layout/content_main" /> 

<android.support.design.widget.FloatingActionButton 
    android:id="@+id/fab" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom|end" 
    android:layout_margin="@dimen/fab_margin" 
    android:src="@android:drawable/ic_dialog_email" /> 

Es folgt der Code bei main_activity.java für Onclick Logik:

 final AppBarLayout appbar = (AppBarLayout) findViewById(R.id.appbarlayout); 
    appbar.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      appbar.setVisibility(View.GONE); 
     } 
    }); 

Dank

example

in der Bildschirmaufnahme können Sie die Einstellungsschaltfläche sehen, ich möchte diese ganze blaue Farbe appbar ausblenden.

+0

können Sie uns zeigen, was Sie unter "Einstellungsmenü" verstehen? – roarster

+0

Sehr geehrte @roarster Ich habe einen Screenshot hinzugefügt. Ich möchte diese blaue Appbar beim Klicken auf den Bildschirm automatisch ausblenden. Danke –

Antwort

1

Verwenden Sie einfach Ansicht des setVisibility() zu verstecken und die AppBarLayout zu zeigen.

Wenn Sie möchten, dass es animiert wird, dann fügen Sie android:animateLayoutChanges="true" zum AppBarLayout's XML hinzu.

+0

Ich habe hinzugefügt, die android: animateLayoutChanges = "true" zu meinem appbarLayouts xml Aber immer noch das Layout nicht animieren. ‚ ' –

+0

verschwindet es sofort, wenn Sie 'setVisibility (View.GONE)' aufrufen? – roarster

+0

wo soll ich die setVisibility (view.gone) In main_activity nennen? public void setVisibility (int Sichtbarkeit) { setVisibility (View.GONE); } so? –

1

Sie können die Scrolling Behavior eines untergeordneten Views festlegen.

<android.support.v7.widget.RecyclerView 
     android:id="@+id/rvToDoList" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

Fügen Sie dann die scrollFlags Ihrer Symbolleiste hinzu.

Und schließlich, simulieren Sie einen Scroll alle N Sekunden, so dass die Toolbar ausgeblendet wird.

//After 5 secs, scroll screen to N item in a list or something. 
Verwandte Themen