2016-06-01 5 views
3

바닥 시트 아래에 숨어 :FAB 내가 XML 다음 한

<android.support.design.widget.CoordinatorLayout 
    android:id="@+id/sliding_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_below="@id/app_bar"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior"> 

     <fragment 
      android:id="@+id/fragment1" 
      android:name="com.xyz.Fragment1" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      tools:layout="@layout/fragment_layout1" /> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/layoutBottomSheet" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:elevation="@dimen/global_margin" 
     android:orientation="vertical" 
     app:layout_behavior="@string/bottom_sheet_behavior"> 

     <fragment 
      android:id="@+id/fragment2" 
      android:name="com.xyz.Fragment2" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center|top" 
      tools:layout="@layout/fragment_layout2" /> 
    </LinearLayout> 

    <android.support.design.widget.FloatingActionButton 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginEnd="@dimen/global_margin" 
     android:layout_marginRight="@dimen/global_margin" 
     android:src="@drawable/ic_add_white_24dp" 
     app:borderWidth="0dp" 
     app:elevation="4dp" 
     app:layout_anchor="@id/layoutBottomSheet" 
     app:layout_anchorGravity="top|right|end" /> 
</android.support.design.widget.CoordinatorLayout> 

가 배치는 다음 아래로 Fragment1을 표시해야하는 Fragment2 및 FAB은에서 Fragment2 이상하지, Fragment2에 고정되어 있지만 그것을 .

screenshot

이 무슨 일을하려고로

사실이 보여주는? 어떤 생각?

답변

2

layoutBottomSheet -LinearLayout의 표고는 @dimen/global_margin입니다. 이 치수가 FloatingActionButton의 높이로 정의한 4dp보다 큰 경우 버튼이 상위 레이아웃 뒤에 숨겨집니다.

아마도 크기가 4dp보다 큽니다. 버튼의 높이를 적절하게 변경하십시오.

+0

예 16dp였습니다. 지적 해 주셔서 고마워요. – Mangesh

0

style="@style/Widget.Design.BottomSheet.Modal"을 사용하는 경우 하단 시트 높이보다 높은 값 (style="@style/Widget.Design.BottomSheet.Modal" 인 경우 16dp)보다 큰 값으로 FAB에서 setCompatElevation(...)을 호출하여 상단에 있는지 확인할 수 있습니다.