Android實現滑動到頂部懸停的效果

原文鏈接:https://www.jb51.net/article/92760.htm

多寫一個和需要懸浮的部分一模一樣的layout,先把浮動區域的可見性設置爲gone。當浮動區域滑動到頂部的時候,就把浮動區域B的可見性設置爲VISIBLE。這樣看起來就像懸浮在頂部不動了。

這裏介紹的是另外一種方式:

使用design包中的控件

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

<android.support.design.widget.CoordinatorLayout

 xmlns:android="http://schemas.android.com/apk/res/android"

 xmlns:app="http://schemas.android.com/apk/res-auto"

 xmlns:tools="http://schemas.android.com/tools"

 android:layout_width="match_parent"

 android:layout_height="match_parent"

 android:fitsSystemWindows="true"

 tools:context="com.peipei.app.MainActivity">

 

 <android.support.design.widget.AppBarLayout

 android:layout_width="match_parent"

 android:layout_height="250dp">

 

 <android.support.design.widget.CollapsingToolbarLayout

  app:layout_scrollFlags="scroll"

  app:contentScrim="#000000"

  android:layout_width="match_parent"

  android:layout_height="220dp">

 

  <TextView

  android:text="banner區域"

  android:gravity="center"

  android:textColor="#ffffff"

  android:background="#987545"

  android:layout_width="match_parent"

  android:layout_height="220dp"/>

 

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

 

 <TextView

  android:gravity="center"

  android:layout_width="match_parent"

  android:layout_height="30dp"

  android:text="懸浮的部分"/>

 

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

 

 <android.support.v4.widget.NestedScrollView

  android:layout_width="match_parent"

  android:layout_height="match_parent"

  app:layout_behavior="@string/appbar_scrolling_view_behavior">

 

  <TextView

  android:layout_width="wrap_content"

  android:layout_height="wrap_content"

  android:layout_margin="@dimen/text_margin"

  android:text="@string/large_text"/>

 

 </android.support.v4.widget.NestedScrollView>

 

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

實現步驟:

1、將需要懸浮的layout放到CollapsingToolbarLayout之外,AppBarLayout之內

2、將CollapsingToolbarLayoutapp:layout_scrollFlags設置爲scroll

3、給滾動的NestedScroolView設置

      app:layout_behavior="@String/appbar_scrolling_view_behavior"

就大功告成了(記得根佈局要是CoordinatorLayout)

參考 https://www.jb51.net/article/92760.htm

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章