我想在第一次加载Activity时隐藏底页。
然后当我点击按钮时,显示底部页面。
所以我这样设置,
<LinearLayout
android:id="@+id/main_linearlayout_BottomSheet"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
app:behavior_hideable="true"
app:behavior_peekHeight="200dp"
app:layout_behavior="@string/bottom_sheet_behavior"
android:background="@drawable/mappoint_edge"
>
和
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bottomSheet.setState(BottomSheetBehavior.STATE_HIDDEN);
}
单击按钮时
private void setButton() {
if (!state){
bottomSheet.setState(BottomSheetBehavior.STATE_COLLAPSED);
}else{
bottomSheet.setState(BottomSheetBehavior.STATE_HIDDEN);
}
}
但我有一些问题。
当我将bottomSheet.setState(BottomSheetBehavior.STATE_HIDDEN)
放入onCreate
时,即使点击,也只会显示bottomSheet,但是当我删除它时,bottomSheet隐藏并通过点击显示。
如果我想在第一次隐藏bottomSheet,我放置bottomSheet.setState(BottomSheetBehavior.STATE_HIDDEN)
?
如果你知道,请回复
答案 0 :(得分:0)
在onCreate
,
bottomSheetBehavior.setPeekHeight(0);
bottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
当我展示时,
bottomSheetBehavior.setPeekHeight(200);
bottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
答案 1 :(得分:-2)
在按钮的onClick()
内使用:sheet.show()
。
然后,当您想要将其解雇时,请使用sheet.dismiss()
;
private void setButton() {
if (!state){
bottomSheet.show()
}else{
bottomSheet.dismiss()
}
}