我希望设计一个布局,包括:在布局顶部占据20%屏幕宽度的工具栏,然后在垂直方向下方是一个ViewPager(占据60%屏幕宽度),再在垂直方向下面是一个BottomSheet(在折叠时占据屏幕的20%,在展开时占据100%屏幕宽度)。
现在我已经像这样声明了bottomsheet:
<LinearLayout
android:id="@+id/BSSECONDTOOLBAR"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="???"
app:layout_behavior="android.support.design.widget.BottomSheetBehavior"
android:layout_gravity="bottom"
android:gravity="bottom"
android:background="#f44242" />
由于该视图应为CoordinatorLayout
的直接子级,因此无法使用layout_weight
属性。
我的问题是如何以百分比设置BottomSheet
的高度?
<Toolbar>
和<ViewPager>
放在<LinearLayout>
中,因此我可以使用layout_weight
属性来设置它们的百分比。在我按照这种方式声明布局文件之后,我应该使用你的代码使 BottomSheet 占据屏幕的 20%,对吗? - Raducu Mihai<CoordinatorLayout><Toolbar/><ViewPager/><BottomSheet/></CoordinatorLayout>
,不需要在任何地方使用LinearLayout。 - Ben P.CoordinatorLayout
并不支持这些功能,所以你必须自己完成。 - Ben P.