一、效果图

简书首页:
仿简书首页 - 图1
简单仿照效果图:
iShot2020-08-1821.53.06.gif
布局文件:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. xmlns:app="http://schemas.android.com/apk/res-auto">
  6. <com.google.android.material.appbar.AppBarLayout
  7. android:layout_width="match_parent"
  8. android:layout_height="wrap_content">
  9. <com.google.android.material.appbar.CollapsingToolbarLayout
  10. android:layout_width="match_parent"
  11. android:layout_height="wrap_content"
  12. app:contentScrim="@color/white"
  13. app:layout_scrollFlags="scroll|exitUntilCollapsed">
  14. <!-- 轮播图和横向滑动布局-->
  15. <LinearLayout
  16. android:layout_width="match_parent"
  17. android:layout_height="wrap_content"
  18. android:orientation="vertical">
  19. <!-- 一个 ImageView 代替轮播图-->
  20. <ImageView
  21. android:layout_width="match_parent"
  22. android:layout_height="140dp"
  23. android:src="@mipmap/wuhuang"
  24. android:scaleType="centerCrop"
  25. app:layout_collapseMode="parallax"/>
  26. <HorizontalScrollView
  27. android:layout_width="match_parent"
  28. android:layout_height="40dp"
  29. android:background="@color/white"
  30. android:overScrollMode="never"
  31. android:scrollbars="none">
  32. <LinearLayout
  33. android:layout_width="match_parent"
  34. android:layout_height="match_parent"
  35. android:orientation="horizontal"
  36. android:paddingStart="20dp">
  37. <TextView
  38. android:layout_width="wrap_content"
  39. android:layout_height="wrap_content"
  40. android:text="小说精选"
  41. android:layout_gravity="center_vertical"/>
  42. <TextView
  43. android:layout_width="wrap_content"
  44. android:layout_height="wrap_content"
  45. android:text="摄影游记"
  46. android:layout_marginStart="20dp"
  47. android:layout_gravity="center_vertical"/>
  48. <TextView
  49. android:layout_width="wrap_content"
  50. android:layout_height="wrap_content"
  51. android:text="漫画手绘"
  52. android:layout_marginStart="20dp"
  53. android:layout_gravity="center_vertical"/>
  54. <TextView
  55. android:layout_width="wrap_content"
  56. android:layout_height="wrap_content"
  57. android:text="动漫卡通"
  58. android:layout_marginStart="20dp"
  59. android:layout_gravity="center_vertical"/>
  60. <TextView
  61. android:layout_width="wrap_content"
  62. android:layout_height="wrap_content"
  63. android:text="电影世界"
  64. android:layout_marginStart="20dp"
  65. android:layout_gravity="center_vertical"/>
  66. <TextView
  67. android:layout_width="wrap_content"
  68. android:layout_height="wrap_content"
  69. android:text="科学幻想"
  70. android:layout_marginStart="20dp"
  71. android:layout_gravity="center_vertical"/>
  72. </LinearLayout>
  73. </HorizontalScrollView>
  74. </LinearLayout>
  75. <!-- <androidx.appcompat.widget.Toolbar-->
  76. <!-- android:layout_width="match_parent"-->
  77. <!-- android:layout_height="wrap_content">-->
  78. <!-- -->
  79. <!-- </androidx.appcompat.widget.Toolbar>-->
  80. </com.google.android.material.appbar.CollapsingToolbarLayout>
  81. <RelativeLayout
  82. android:layout_width="match_parent"
  83. android:layout_height="50dp"
  84. android:background="@color/white">
  85. <TextView
  86. android:layout_width="wrap_content"
  87. android:layout_height="wrap_content"
  88. android:text="搜索"
  89. android:drawableLeft="@drawable/ic_search"
  90. android:layout_centerInParent="true"/>
  91. </RelativeLayout>
  92. </com.google.android.material.appbar.AppBarLayout>
  93. <include layout="@layout/content_scrolling" />
  94. </androidx.coordinatorlayout.widget.CoordinatorLayout>

二、参考

demo
Material Design之 AppbarLayout 开发实践总结