fragment_home_page.xml 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <layout xmlns:android="http://schemas.android.com/apk/res/android"
  3. xmlns:app="http://schemas.android.com/apk/res-auto"
  4. xmlns:tools="http://schemas.android.com/tools">
  5. <data>
  6. <variable
  7. name="homePageViewModel"
  8. type="com.datarecovery.master.module.homepage.HomePageViewModel" />
  9. <import type="com.atmob.common.ui.SizeUtil" />
  10. </data>
  11. <androidx.constraintlayout.widget.ConstraintLayout
  12. android:layout_width="match_parent"
  13. android:background="@color/white"
  14. android:layout_height="match_parent">
  15. <View
  16. android:layout_width="match_parent"
  17. android:layout_height="0dp"
  18. android:background="@drawable/bg_home_page"
  19. app:layout_constraintDimensionRatio="360:280"
  20. app:layout_constraintTop_toTopOf="parent"
  21. tools:layout_editor_absoluteX="102dp"
  22. tools:layout_editor_absoluteY="113dp" />
  23. <View
  24. android:layout_width="match_parent"
  25. android:layout_height="0dp"
  26. android:background="@drawable/bg_home_page_radial"
  27. app:layout_constraintDimensionRatio="360:280"
  28. app:layout_constraintStart_toStartOf="parent"
  29. app:layout_constraintTop_toTopOf="parent" />
  30. <Space
  31. android:id="@+id/space_status_bar"
  32. android:layout_width="match_parent"
  33. android:layout_height="@{SizeUtil.getStatusBarHeight(), default=@dimen/app_status_bar_height}"
  34. app:layout_constraintTop_toTopOf="parent" />
  35. <androidx.core.widget.NestedScrollView
  36. android:layout_width="match_parent"
  37. android:layout_height="0dp"
  38. app:layout_constraintBottom_toBottomOf="parent"
  39. app:layout_constraintTop_toBottomOf="@+id/space_status_bar">
  40. <androidx.constraintlayout.widget.ConstraintLayout
  41. android:layout_width="match_parent"
  42. android:layout_height="wrap_content">
  43. <Space
  44. android:id="@+id/space1"
  45. android:layout_width="match_parent"
  46. android:layout_height="0dp"
  47. app:layout_constraintDimensionRatio="360:16"
  48. app:layout_constraintTop_toTopOf="parent" />
  49. <ImageView
  50. android:id="@+id/iv_logo"
  51. android:layout_width="0dp"
  52. android:layout_height="0dp"
  53. android:layout_marginHorizontal="@dimen/app_common_page_horizontal_padding"
  54. android:src="@drawable/icon_home_page_logo"
  55. app:layout_constraintDimensionRatio="246:60"
  56. app:layout_constraintStart_toStartOf="parent"
  57. app:layout_constraintTop_toBottomOf="@+id/space1"
  58. app:layout_constraintWidth_percent="0.2277777777777778" />
  59. <Space
  60. android:id="@+id/space2"
  61. android:layout_width="match_parent"
  62. android:layout_height="0dp"
  63. app:layout_constraintDimensionRatio="360:16"
  64. app:layout_constraintTop_toBottomOf="@+id/iv_logo" />
  65. <ImageView
  66. android:id="@+id/iv_banner"
  67. android:layout_width="match_parent"
  68. android:layout_height="0dp"
  69. android:layout_marginHorizontal="@dimen/app_common_page_horizontal_padding"
  70. android:src="@drawable/icon_home_page_banner"
  71. app:layout_constraintDimensionRatio="984:360"
  72. app:layout_constraintTop_toBottomOf="@+id/space2" />
  73. <Space
  74. android:id="@+id/space3"
  75. android:layout_width="match_parent"
  76. android:layout_height="0dp"
  77. app:layout_constraintDimensionRatio="360:20"
  78. app:layout_constraintTop_toBottomOf="@+id/iv_banner" />
  79. <View
  80. android:layout_width="match_parent"
  81. android:layout_height="0dp"
  82. app:layout_constraintBottom_toBottomOf="@+id/space9"
  83. android:background="@drawable/bg_home_page_content"
  84. app:layout_constraintTop_toBottomOf="@+id/space3" />
  85. <Space
  86. android:id="@+id/space4"
  87. android:layout_width="match_parent"
  88. android:layout_height="0dp"
  89. app:layout_constraintDimensionRatio="360:16"
  90. app:layout_constraintTop_toBottomOf="@+id/space3" />
  91. <View
  92. android:id="@+id/v_information_bg"
  93. android:layout_width="match_parent"
  94. android:layout_height="0dp"
  95. android:layout_marginHorizontal="@dimen/app_common_page_horizontal_padding"
  96. android:background="@drawable/bg_home_page_scroll"
  97. app:layout_constraintDimensionRatio="328:32"
  98. app:layout_constraintEnd_toEndOf="parent"
  99. app:layout_constraintStart_toStartOf="parent"
  100. app:layout_constraintTop_toBottomOf="@+id/space4" />
  101. <TextView
  102. android:id="@+id/tv_information"
  103. android:layout_width="0dp"
  104. android:layout_height="0dp"
  105. android:layout_marginStart="8dp"
  106. android:background="@drawable/bg_home_page_information"
  107. android:gravity="center"
  108. android:text="@string/home_page_information"
  109. android:textColor="@color/white"
  110. android:textSize="12dp"
  111. app:layout_constraintBottom_toBottomOf="@+id/v_information_bg"
  112. app:layout_constraintDimensionRatio="32:16"
  113. app:layout_constraintStart_toStartOf="@+id/v_information_bg"
  114. app:layout_constraintTop_toTopOf="@+id/v_information_bg"
  115. app:layout_constraintWidth_percent="0.0888888888888889" />
  116. <ViewSwitcher
  117. android:id="@+id/view_switcher"
  118. android:layout_width="0dp"
  119. android:layout_height="wrap_content"
  120. android:layout_marginHorizontal="8dp"
  121. app:layout_constraintBottom_toBottomOf="@+id/v_information_bg"
  122. app:layout_constraintEnd_toEndOf="@+id/v_information_bg"
  123. app:layout_constraintStart_toEndOf="@+id/tv_information"
  124. app:layout_constraintTop_toTopOf="@+id/v_information_bg" />
  125. <Space
  126. android:id="@+id/space5"
  127. android:layout_width="match_parent"
  128. android:layout_height="0dp"
  129. app:layout_constraintDimensionRatio="360:16"
  130. app:layout_constraintTop_toBottomOf="@+id/v_information_bg" />
  131. <TextView
  132. android:id="@+id/tv_hot_function"
  133. style="@style/Home_Page_Title_Text"
  134. android:layout_width="wrap_content"
  135. android:layout_height="wrap_content"
  136. android:layout_marginStart="@dimen/app_common_page_horizontal_padding"
  137. android:text="@string/home_page_hot_function"
  138. app:layout_constraintStart_toStartOf="parent"
  139. app:layout_constraintTop_toBottomOf="@+id/space5" />
  140. <Space
  141. android:id="@+id/space6"
  142. android:layout_width="match_parent"
  143. android:layout_height="0dp"
  144. app:layout_constraintDimensionRatio="360:12"
  145. app:layout_constraintTop_toBottomOf="@+id/tv_hot_function" />
  146. <View
  147. android:onClick="@{()-> homePageViewModel.onWxMessageRecoveryClick()}"
  148. android:id="@+id/v_wx_message_recovery"
  149. android:layout_width="0dp"
  150. android:layout_height="0dp"
  151. android:layout_marginStart="@dimen/app_common_page_horizontal_padding"
  152. android:background="@drawable/bg_wx_message_recovery"
  153. app:layout_constraintDimensionRatio="152:108"
  154. app:layout_constraintHorizontal_chainStyle="spread_inside"
  155. app:layout_constraintLeft_toLeftOf="parent"
  156. app:layout_constraintRight_toLeftOf="@+id/v_wx_friend_recovery"
  157. app:layout_constraintTop_toBottomOf="@+id/space6"
  158. app:layout_constraintWidth_percent="0.4222222222222222" />
  159. <ImageView
  160. android:id="@+id/iv_wx_message_recovery"
  161. android:layout_width="0dp"
  162. android:layout_height="0dp"
  163. android:src="@drawable/icon_home_page_message_recovery"
  164. app:layout_constraintBottom_toBottomOf="@+id/v_wx_message_recovery"
  165. app:layout_constraintDimensionRatio="1:1"
  166. app:layout_constraintEnd_toEndOf="@+id/v_wx_message_recovery"
  167. app:layout_constraintHorizontal_bias="0.1388888888888889"
  168. app:layout_constraintStart_toStartOf="@+id/v_wx_message_recovery"
  169. app:layout_constraintTop_toTopOf="@+id/v_wx_message_recovery"
  170. app:layout_constraintVertical_bias="0.21875"
  171. app:layout_constraintWidth_percent="0.1222222222222222" />
  172. <TextView
  173. android:id="@+id/tv_wx_message_recovery"
  174. android:layout_width="wrap_content"
  175. android:layout_height="wrap_content"
  176. android:text="@string/home_page_wx_msg_recovery"
  177. android:textColor="@color/white"
  178. android:textSize="15dp"
  179. android:textStyle="bold"
  180. app:layout_constraintStart_toStartOf="@+id/iv_wx_message_recovery"
  181. app:layout_constraintTop_toBottomOf="@+id/iv_wx_message_recovery" />
  182. <TextView
  183. android:layout_width="wrap_content"
  184. android:layout_height="wrap_content"
  185. android:text="@string/home_page_wx_msg_recovery_desc"
  186. android:textColor="@color/white"
  187. android:textSize="10dp"
  188. app:layout_constraintStart_toStartOf="@+id/tv_wx_message_recovery"
  189. app:layout_constraintTop_toBottomOf="@+id/tv_wx_message_recovery" />
  190. <View
  191. android:onClick="@{()-> homePageViewModel.onWxFriendRecoveryClick()}"
  192. android:id="@+id/v_wx_friend_recovery"
  193. android:layout_width="0dp"
  194. android:layout_height="0dp"
  195. android:layout_marginEnd="@dimen/app_common_page_horizontal_padding"
  196. android:background="@drawable/bg_wx_friend_recovery"
  197. app:layout_constraintDimensionRatio="168:50"
  198. app:layout_constraintLeft_toRightOf="@+id/v_wx_message_recovery"
  199. app:layout_constraintRight_toRightOf="parent"
  200. app:layout_constraintTop_toTopOf="@+id/v_wx_message_recovery"
  201. app:layout_constraintWidth_percent="0.4666666666666667" />
  202. <ImageView
  203. android:id="@+id/iv_wx_friend_recovery"
  204. android:layout_width="0dp"
  205. android:layout_height="0dp"
  206. android:src="@drawable/icon_home_page_friend_recovery"
  207. app:layout_constraintBottom_toBottomOf="@+id/v_wx_friend_recovery"
  208. app:layout_constraintDimensionRatio="111:114"
  209. app:layout_constraintEnd_toEndOf="@+id/v_wx_friend_recovery"
  210. app:layout_constraintHorizontal_bias="0.0757575757575758"
  211. app:layout_constraintStart_toStartOf="@+id/v_wx_friend_recovery"
  212. app:layout_constraintTop_toTopOf="@+id/v_wx_friend_recovery"
  213. app:layout_constraintWidth_percent="0.1" />
  214. <TextView
  215. android:id="@+id/tv_wx_friend_recovery"
  216. android:layout_width="wrap_content"
  217. android:layout_height="wrap_content"
  218. android:layout_marginStart="8dp"
  219. android:text="@string/home_page_wx_friend_recovery"
  220. android:textColor="@color/white"
  221. android:textSize="14sp"
  222. android:textStyle="bold"
  223. app:layout_constraintBottom_toTopOf="@+id/tv_wx_friend_recovery_desc"
  224. app:layout_constraintStart_toEndOf="@+id/iv_wx_friend_recovery"
  225. app:layout_constraintTop_toTopOf="@+id/iv_wx_friend_recovery"
  226. app:layout_constraintVertical_chainStyle="packed" />
  227. <TextView
  228. android:id="@+id/tv_wx_friend_recovery_desc"
  229. android:layout_width="wrap_content"
  230. android:layout_height="wrap_content"
  231. android:text="@string/home_page_wx_friend_recovery_desc"
  232. android:textColor="@color/white"
  233. android:textSize="10sp"
  234. app:layout_constraintBottom_toBottomOf="@+id/iv_wx_friend_recovery"
  235. app:layout_constraintStart_toStartOf="@+id/tv_wx_friend_recovery"
  236. app:layout_constraintTop_toBottomOf="@+id/tv_wx_friend_recovery" />
  237. <View
  238. android:onClick="@{()-> homePageViewModel.onImgRecoveryClick()}"
  239. android:id="@+id/v_img_recovery"
  240. android:layout_width="0dp"
  241. android:layout_height="0dp"
  242. android:background="@drawable/bg_img_recovery"
  243. app:layout_constraintBottom_toBottomOf="@id/v_wx_message_recovery"
  244. app:layout_constraintDimensionRatio="168:50"
  245. app:layout_constraintEnd_toEndOf="@+id/v_wx_friend_recovery"
  246. app:layout_constraintLeft_toRightOf="@+id/v_wx_message_recovery"
  247. app:layout_constraintWidth_percent="0.4666666666666667" />
  248. <ImageView
  249. android:id="@+id/iv_img_recovery"
  250. android:layout_width="0dp"
  251. android:layout_height="0dp"
  252. android:src="@drawable/icon_home_page_img_recovery"
  253. app:layout_constraintBottom_toBottomOf="@+id/v_img_recovery"
  254. app:layout_constraintDimensionRatio="111:114"
  255. app:layout_constraintEnd_toEndOf="@+id/v_img_recovery"
  256. app:layout_constraintHorizontal_bias="0.0757575757575758"
  257. app:layout_constraintStart_toStartOf="@+id/v_img_recovery"
  258. app:layout_constraintTop_toTopOf="@+id/v_img_recovery"
  259. app:layout_constraintWidth_percent="0.1" />
  260. <TextView
  261. android:id="@+id/tv_img_recovery"
  262. android:layout_width="wrap_content"
  263. android:layout_height="wrap_content"
  264. android:layout_marginStart="8dp"
  265. android:text="@string/home_page_img_recovery"
  266. android:textColor="@color/white"
  267. android:textSize="14sp"
  268. android:textStyle="bold"
  269. app:layout_constraintBottom_toTopOf="@+id/tv_img_recovery_desc"
  270. app:layout_constraintStart_toEndOf="@+id/iv_img_recovery"
  271. app:layout_constraintTop_toTopOf="@+id/iv_img_recovery"
  272. app:layout_constraintVertical_chainStyle="packed" />
  273. <TextView
  274. android:id="@+id/tv_img_recovery_desc"
  275. android:layout_width="wrap_content"
  276. android:layout_height="wrap_content"
  277. android:text="@string/home_page_img_recovery_desc"
  278. android:textColor="@color/white"
  279. android:textSize="10sp"
  280. app:layout_constraintBottom_toBottomOf="@+id/iv_img_recovery"
  281. app:layout_constraintStart_toStartOf="@+id/tv_img_recovery"
  282. app:layout_constraintTop_toBottomOf="@+id/tv_img_recovery" />
  283. <Space
  284. android:id="@+id/space7"
  285. android:layout_width="match_parent"
  286. android:layout_height="0dp"
  287. app:layout_constraintDimensionRatio="360:20"
  288. app:layout_constraintTop_toBottomOf="@+id/v_wx_message_recovery" />
  289. <TextView
  290. android:id="@+id/tv_other_function"
  291. style="@style/Home_Page_Title_Text"
  292. android:layout_width="wrap_content"
  293. android:layout_height="wrap_content"
  294. android:layout_marginStart="@dimen/app_common_page_horizontal_padding"
  295. android:text="@string/home_page_other_function"
  296. app:layout_constraintStart_toStartOf="parent"
  297. app:layout_constraintTop_toBottomOf="@+id/space7" />
  298. <Space
  299. android:id="@+id/space8"
  300. android:layout_width="match_parent"
  301. android:layout_height="0dp"
  302. app:layout_constraintDimensionRatio="360:6"
  303. app:layout_constraintTop_toBottomOf="@+id/tv_other_function" />
  304. <androidx.recyclerview.widget.RecyclerView
  305. android:id="@+id/ry_other_function"
  306. android:scrollbars="none"
  307. android:overScrollMode="never"
  308. android:layout_width="match_parent"
  309. android:layout_height="wrap_content"
  310. android:layout_marginHorizontal="@dimen/app_common_page_horizontal_padding"
  311. app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
  312. app:layout_constraintTop_toBottomOf="@+id/space8"
  313. app:spanCount="4"
  314. tools:itemCount="6"
  315. tools:listitem="@layout/item_home_page_other_function" />
  316. <Space
  317. android:id="@+id/space9"
  318. android:layout_width="match_parent"
  319. android:layout_height="0dp"
  320. app:layout_constraintDimensionRatio="360:20"
  321. app:layout_constraintTop_toBottomOf="@+id/ry_other_function" />
  322. </androidx.constraintlayout.widget.ConstraintLayout>
  323. </androidx.core.widget.NestedScrollView>
  324. </androidx.constraintlayout.widget.ConstraintLayout>
  325. </layout>