我想在片段中实现折叠布局。但是我的collapsingLayout,framelayout(容器)和tablayout的位置就像放置在框架布局中一样。
我想在顶部制作Collapsinglayout,在它下方制作tablayout,并在tablayout下面设置框架布局,保留折叠动画。
(框架布局容器主机由recyclerview组成的各种片段[由于varioius自定义手势,不考虑viewpager])
fragment_layout.xml
<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:background="@color/appBgColor"
android:clickable="true"
tools:context="com.lunchpoint.fragments.RestaurantFragment"
>
<android.support.design.widget.AppBarLayout
android:id="@+id/id_appbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/transparent"
android:fitsSystemWindows="true"
>
<android.support.design.widget.CollapsingToolbarLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="scroll|exitUntilCollapsed"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="310dip"
>
<!--Header layout-->
</RelativeLayout>
</android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginEnd="16dip"
android:layout_marginLeft="16dip"
android:layout_marginRight="16dip"
android:layout_marginStart="16dip"
app:tabGravity="fill"
app:tabMinWidth="0dip"
app:tabMode="scrollable"
app:tabPaddingEnd="1dp"
app:tabPaddingStart="1dp"
/>
<FrameLayout
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
</android.support.design.widget.CoordinatorLayout>
答案 0 :(得分:1)
CoordinatorLayout是一个动力的FrameLayout:所有孩子都可以通过行为或锚定义他们的位置。查看更多文档,例如this。
答案 1 :(得分:1)
您可以轻松地结合使用锚属性和layout_gravity来实现此目的。参见,例如:http://ponshere.in/blog/android-coordinator-layout-gravity-and-alignment/