2016-03-31 24 views
1

CollapsingToolbarLayout ve iki FloatingActionButtons içim var. Bu FAB'ler yalnızca Toolbar genişletildiğinde görünür. Yıkıldığında, gizlenirler. Araç çubuğunun daraltılmış olması durumunda onlara görünmelerine ihtiyacım var. Nasıl yapabilirim?CollapsingToolbarLayout ve FloatingActionButton

teşekkürler ipuçları için çok ... doğrudan cordinatorLayout çocuğu ve kullanım düzeni davranış olarak Fab'leri takmalısınız

<?xml version="1.0" encoding="utf-8"?> 
<android.support.design.widget.CoordinatorLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:context=".CalendarEventInsUpdActivity"> 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/app_bar" 
     android:layout_width="match_parent" 
     android:layout_height="@dimen/app_bar_height" 
     android:fitsSystemWindows="true" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/toolbar_layout" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:fitsSystemWindows="true" 
      app:contentScrim="?attr/colorPrimary" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed"> 

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

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

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

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/btnSave" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/fab_margin" 
     android:src="@android:drawable/ic_menu_save" 
     app:backgroundTint="@android:color/holo_green_light" 
     app:layout_anchor="@id/app_bar" 
     app:layout_anchorGravity="bottom|center"/> 

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/btnCancel" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/fab_margin" 
     android:src="@android:drawable/ic_menu_revert" 
     app:backgroundTint="@android:color/holo_red_light" 
     app:layout_anchor="@id/app_bar" 
     app:layout_anchorGravity="bottom|end"/> 

</android.support.design.widget.CoordinatorLayout> 
+0

burada –

+0

gösteri ekran görüntüsü ve burada xml xml düzen eklemek ???????? –

+0

degildi buna cevap Gözat –

cevap

0

Sen FAB Behavior eklemem gerekiyor . Sonra XML FAB etiketi

app:layout_behavior="com.example.ScrollingFABBehavior" /> 
+0

Ben onun çözüm ile java kodundaki FAB davranışını etkileyebilir çünkü @royB cevap seçtim. – Jodynek

0

:

<android.support.design.widget.FloatingActionButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior"/> 
+0

benim gibi Layout_behaviors kullanın –

0

bu xml deneyin kullanarak davranışı eklemek

public class ScrollingFABBehavior extends CoordinatorLayout.Behavior<FloatingActionButton> { 
    private int toolbarHeight; 

    public ScrollingFABBehavior(Context context, AttributeSet attrs) { 
     super(context, attrs); 
     this.toolbarHeight = Utils.getToolbarHeight(context); 
    } 

    @Override 
    public boolean layoutDependsOn(CoordinatorLayout parent, FloatingActionButton fab, View dependency) { 
     return dependency instanceof AppBarLayout; 
    } 

    @Override 
    public boolean onDependentViewChanged(CoordinatorLayout parent, FloatingActionButton fab, View dependency) { 
     //do nothing with the fab or write your logic for the FAB 
     return true; 
    } 
} 

: benzer bir şey deneyin

.

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/main_content" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true"> 

    <android.support.design.widget.AppBarLayout 
     android:id="@+id/appbar" 
     android:layout_width="match_parent" 
     android:layout_height="@dimen/detail_backdrop_height" 
     android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" 
     android:fitsSystemWindows="true"> 

     <android.support.design.widget.CollapsingToolbarLayout 
      android:id="@+id/collapsing_toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      app:layout_scrollFlags="scroll|exitUntilCollapsed" 
      android:fitsSystemWindows="true" 
      app:contentScrim="?attr/colorPrimary" 
      app:expandedTitleMarginStart="48dp" 
      app:expandedTitleMarginEnd="64dp"> 



      <android.support.v7.widget.Toolbar 
       android:id="@+id/toolbar" 
       android:layout_width="match_parent" 
       android:layout_height="?attr/actionBarSize" 
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
       app:layout_collapseMode="pin" /> 

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

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

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

    <android.support.design.widget.FloatingActionButton 
     android:id="@+id/btnSave" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/fab_margin" 
     android:src="@android:drawable/ic_menu_save" 
     app:backgroundTint="@android:color/holo_green_light" 
     app:layout_anchor="@id/app_bar" 
     app:layout_anchorGravity="bottom|center"/> 

     <android.support.design.widget.FloatingActionButton 
     android:id="@+id/btnCancel" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/fab_margin" 
     android:src="@android:drawable/ic_menu_revert" 
     app:backgroundTint="@android:color/holo_red_light" 
     app:layout_anchor="@id/app_bar" 
     app:layout_anchorGravity="bottom|end"/> 


</android.support.design.widget.CoordinatorLayout> 
İlgili konular