如何以编程方式锁定展开/折叠操作?

pio*_*543 3 android material-design android-coordinatorlayout android-collapsingtoolbarlayout

我想在特定的操作上保持这种布局:

初始布局

如今,我可以CoordinatorLayout通过对其进行滑动来折叠或扩展它.我想阻止这种行为.

kri*_*son 18

我假设你的清单正在使用RecyclerView.

您可以关闭嵌套滚动,RecyclerView这将禁用工具栏折叠:

recyclerView.setNestedScrollingEnabled(false);
Run Code Online (Sandbox Code Playgroud)

您可以通过清除滚动标志来锁定工具栏:

CollapsingToolbarLayout toolbar = findViewById(R.id.collapsingToolbar);  // or however you need to do it for your code
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) toolbar.getLayoutParams();
params.setScrollFlags(0);  // clear all scroll flags
Run Code Online (Sandbox Code Playgroud)

  • 顺便说一句,如果你想保持工具栏折叠,也可以工作: appBar.setExpanded(false); NestedScrollView.setNestedScrollingEnabled(false); (2认同)