【发布时间】:2018-09-13 13:52:27
【问题描述】:
我遇到了 BottomSheetBehaviour 的问题。BottomSheet 在开始时没有扩展到最大高度。但是,它可以滚动到最大高度。但我不想滚动,而是希望 BottomSheet 扩展到其最大高度。 我尝试使用
将 bottomSheet 的高度设置为整个屏幕final float scale = getContext().getResources().getDisplayMetrics().density;
int pixels = (int) (BOTTOM_HEIGHT_DP * scale + 0.5f);
bottomSheet.getLayoutParams().height = pixels;
我也试过设置
((BottomSheetBehavior) behavior.setPeekheight(pixels);
我也尝试通过 BottomSheetBehaviour 回调来处理
@Override
public void onStateChanged(@NonNull View bottomSheet, int newState) {
if (newState == BottomSheetBehavior.STATE_HIDDEN) {
newState=BottomSheetBehavior.STATE_EXPANDED;
}
}
调查结果....
STATE_EXPANDED:底部工作表的完全展开状态,其中整个底部工作表可见(如果其高度小于包含的 CoordinatorLayout)或整个 CoordinatorLayout 已填充。 我想这可能是原因(整个 CoordinatorLayout 都被填满了)。但我无法确定 CoordinatorLayout 是否已填充。 我没有在布局中定义 CoordinatorLayout。
【问题讨论】:
-
我也认为这可能是因为布局问题。但它可以滚动到最大高度。就是想不通为什么不一口气展开。
-
你能发布你的 layout.xml 吗?
-
请显示底部工作表的 xml 布局
-
@manishKumarSingh 你找到解决方案了吗?
标签: android android-layout bottom-sheet