Android 仅在特定片段中滚动时,坐标布局隐藏工具栏
我对多个片段使用单活动方法,在主屏幕中我有RecycleView,我只想在主屏幕中滚动时隐藏工具栏,因为它是单活动和一个顶级协调器,在所有屏幕中滚动时隐藏工具栏Android 仅在特定片段中滚动时,坐标布局隐藏工具栏,android,android-coordinatorlayout,Android,Android Coordinatorlayout,我对多个片段使用单活动方法,在主屏幕中我有RecycleView,我只想在主屏幕中滚动时隐藏工具栏,因为它是单活动和一个顶级协调器,在所有屏幕中滚动时隐藏工具栏 如何在某些屏幕上启用滚动隐藏工具栏,在单个活动中禁用其他屏幕的滚动隐藏工具栏?您必须跟踪活动中活动的碎片屏幕,并使用这些功能隐藏或显示 fun enableLayoutBehaviour() { val layoutParams: CoordinatorLayout.LayoutParams = coordinatorLayou
如何在某些屏幕上启用滚动隐藏工具栏,在单个活动中禁用其他屏幕的滚动隐藏工具栏?您必须跟踪活动中活动的碎片屏幕,并使用这些功能隐藏或显示
fun enableLayoutBehaviour() {
val layoutParams: CoordinatorLayout.LayoutParams = coordinatorLayout.layoutParams
layoutParams.behavior = AppBarLayout.ScrollingViewBehavior()
}
fun disableLayoutBehaviour() {
val layoutParams: CoordinatorLayout.LayoutParams = coordinatorLayout.layoutParams
layoutParams.behavior = null
}
您必须跟踪活动中活动的碎片屏幕,并使用这些功能隐藏或显示
fun enableLayoutBehaviour() {
val layoutParams: CoordinatorLayout.LayoutParams = coordinatorLayout.layoutParams
layoutParams.behavior = AppBarLayout.ScrollingViewBehavior()
}
fun disableLayoutBehaviour() {
val layoutParams: CoordinatorLayout.LayoutParams = coordinatorLayout.layoutParams
layoutParams.behavior = null
}
@在我的例子中,Yonatan的回答是不够的,当在碎片之间导航时,一些视图在底部不可见,可能是一些高度配置错误 启用和禁用工具栏的滚动标志工作正常
public void disableToolbarScrollBehavior() {
final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) toolbar.getLayoutParams();
params.setScrollFlags(0);
}
public void enableToolbarScrollBehavior() {
final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) toolbar.getLayoutParams();
params.setScrollFlags(AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL | AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS);
}
@在我的例子中,Yonatan的回答是不够的,当在碎片之间导航时,一些视图在底部不可见,可能是一些高度配置错误 启用和禁用工具栏的滚动标志工作正常
public void disableToolbarScrollBehavior() {
final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) toolbar.getLayoutParams();
params.setScrollFlags(0);
}
public void enableToolbarScrollBehavior() {
final Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) toolbar.getLayoutParams();
params.setScrollFlags(AppBarLayout.LayoutParams.SCROLL_FLAG_SCROLL | AppBarLayout.LayoutParams.SCROLL_FLAG_ENTER_ALWAYS);
}