2015-09-04 21 views
8

,我有以下CollapsingToolbarLayout標籤在我的xml:變化layout_scrollFlags編程方式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值 - 特別是切換滾動的標誌。可能嗎?

回答

22
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覆蓋所有以前的標誌,所以我們應該小心,不要失去已有的標誌