在CollapsingToolbarLayout中以编程方式更改layout_scrollFlags

时间:2015-09-04 23:29:52

标签: android material-design

我的xml中有以下CollapsingToolbarLayout标记:

<android.support.design.widget.CollapsingToolbarLayout
    android:id="@+id/collapsingToolbarLayout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:contentScrim="?attr/colorPrimary"
    app:expandedTitleMarginStart="@dimen/expanded_toolbar_title_margin_start"
    app:layout_scrollFlags="exitUntilCollapsed">

我想以编程方式更改scrollFlags值(运行时) - 具体来说,切换可滚动标志。有可能吗?

1 个答案:

答案 0 :(得分:31)

CollapsingToolbarLayout collapsingToolbar = (CollapsingToolbarLayout) findViewById(R.id.collapsing_toolbar);
AppBarLayout.LayoutParams params = (AppBarLayout.LayoutParams) collapsingToolbar.getLayoutParams();
params.setScrollFlags(AppBarLayout.LayoutParams.SCROLL_FLAG_SNAP); // list other flags here by |
collapsingToolbar.setLayoutParams(params);

有一点值得一提 - setScrollFlags会覆盖所有以前的标志,所以我们应该注意不要丢失已经存在的标志