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

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