多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > 綜合技術 > 7CollapsingToolbarLayout

7CollapsingToolbarLayout

來源:程序員人生   發布時間:2016-11-24 08:51:28 閱讀次數:3020次

CollapsingToolbarLayout是Toolbar的1個包裝,可以做出很多很炫的折疊效果。

toolbar伸縮

toolbar舒展開加入圖片背景,收縮時變會普通toolbar

Toolbar舒展

先從最簡單的看起

<android.support.design.widget.AppBarLayout android:fitsSystemWindows="true" android:layout_width="match_parent" android:layout_height="256dp"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsingToolbarLayout" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_scrollFlags="scroll"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="?attr/colorPrimary" android:minHeight="?attr/actionBarSize" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout>

效果以下所示,toolbar可以舒展

如果想要最后的時候toolbar也留著,只要在app:layout_scrollFlags里加1個exitUntilCollapsed,效果以下,exitUntilCollapsed意思就是滑出直到折疊狀態,即滑出的時候最多到折疊狀態,沒法完全滑出

此時有個問題,右上角菜單不見了,實際上是滑出去了,我們要想保存,就得讓toolbar不滑動,pin住就好了(Toolbar設置app:layout_collapseMode=”pin”),讓toolbar不滑動。效果以下,此時效果已不錯了,上滑進程中,標題逐步變小,然后跑到toolbar里去.此時如果要修改舒展狀態下text的位置可以用app:expandedTitleMargin, app:expandedTitleMarginBottom, app:expandedTitleMarginEnd and app:expandedTitleMarginStart。

Toolbar背景圖

case1

如作甚Toolbar添加個背景圖呢?
由于CollapsingToolbarLayout是FrameLayout所以,直接在里面加ImageView就能夠了(加backgroud行不行?)
注意此時把toolbar背景去掉,刪掉這句android:background=”?attr/colorPrimary”
然后CollapsingToolbarLayout內加入加入app:contentScrim=”?attr/colorPrimary”
這么做,舒展開的時候背景就是圖片,收縮的時候背景就是純色

case2

此時發現圖片不會滑到狀態欄上,那是由于狀態欄沒有設置透明,給activity換個style用AppTheme.NoActionBar以后,就能夠滑到狀態欄了。效果以下

case3

此時,初始態未覆蓋狀態欄,滑動的時候可以覆蓋到狀態欄,想要初始態就覆蓋狀態欄,怎樣辦?
給ImageView加上fitSystemWindow,效果以下

case4

app:layout_collapseMode=”parallax” 可讓圖片和AppBarLayout1起滑動

最后xml代碼以下

“` xml

<android.support.design.widget.AppBarLayout
    android:fitsSystemWindows="true"
    android:layout_width="match_parent"
    android:layout_height="256dp">

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

        <ImageView
            android:src="http://www.vxbq.cn/upload/caiji/20160922/@drawable/boygirl"
            android:id="@+id/backdrop"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop"
            app:layout_collapseMode="parallax" />

        <android.support.v7.widget.Toolbar
            app:layout_collapseMode="pin"
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:minHeight="?attr/actionBarSize"
            app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />

    </android.support.design.widget.CollapsingToolbarLayout>

</android.support.design.widget.AppBarLayout>

“`

上面這2個gif,style都是AppTheme,如果換成AppTheme.NoActionBar,就會致使狀態欄透明,但是此時初始態,ImageView不會占據狀態欄,此時如果把CollapsingToolbarLayout和ImageView設置為fitsystemwindow那就能夠占據狀態欄了,真奇異。

enterAlways

enterAlways: 1旦下滑就會讓view逐漸顯示出來. 當我們滑到1個list的底部的時候,想要下滑盡快看到toolbar的時候,用這個模式很有用。

1般情況下,我們想要toolbar顯示出來,得先滑到list的頂部才行,以下所示

如果設置了enterAlways,就會以下所示,可以看到toolbar立刻就出來了

enterAlwaysCollapsed

但是如果使用enterAlwaysCollapsed,注意此時的layout_scrollFlags必須寫了scroll、enterAlways、enterAlwaysCollapsed,
這樣可以實現,1旦下滑就把我們的view拉出minimum height,然后list到頂的時候,可以把全部view拉出來。以下所示。(我試了下沒做出這樣的效果)

snap

snap的作用就是讓CollapsingToolbarLayout要末完全展開,要末完全收縮,根據手指抬起的時候,轉動的距離有無1半來判斷

參考資料

http://blog.csdn.net/u010687392/article/details/46906657
https://guides.codepath.com/android/Handling-Scrolls-with-CoordinatorLayout
https://developer.android.com/reference/android/support/design/widget/CollapsingToolbarLayout.html

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 欧美在线观看高清一二三区 | 国产18视频 | 亚洲成年人在线观看 | 在线欧美69v免费观看视频 | 一区自拍 | 大香人蕉免费视频75 | 亚洲一区二区三区久久 | 欧美日韩在线精品成人综合网 | 欧美在线观看一区二区三区 | 鲁在线| 国产精品福利视频一区二区三区 | 秋霞特色aa大片在线观看 | 综合欧美一区二区三区 | 国产亚洲一级精品久久 | 亚洲色图日韩 | 日韩欧美一及在线播放 | 欧美xxxx做受欧美人妖 | 毛片免| 粉嫩00福利视频在线精品 | 激情综合婷婷丁香六月花 | free性日韩 | 久久久久国产精品嫩草影院 | 亚洲国产精久久久久久久春色 | 日本久久综合 | 日本欧美强乱视频在线 | 久久久久久综合一区中文字幕 | 在线观看国产情趣免费视频 | 日韩欧美在线观看视频一区二区 | 天天视频国产免费入口 | 国产成人综合洲欧美在线 | 高清免费a级在线观看国产 高清免费国产在线观看 | 国产美女激情 | 看性过程三级视频在线观看 | 激情综合五月天丁香婷婷 | 最近中文字幕高清免费大全8 | 国产精品嫩草影院在线播放 | 亚洲福利一区福利三区 | 免费午夜在线视频 | 黑人一区二区三区中文字幕 | 久久一区二区精品综合 | 性欧美18videos |