全部产品
云市场
云游戏

标题栏组件

更新时间:2020-06-19 14:47:17

AUTitleBar 提供包含返回按钮、标题文案、标题栏上的进度条、左按钮(文字和图标)、右按钮(文字和图标)的标题栏。

效果图

默认提供白底的 AUTitleBar 控件:

依赖

参见 快速开始

接口说明

  1. /**
  2. * 设置按钮的 drawable
  3. * @param iconView
  4. * @param resId
  5. */
  6. public void setBtnImage(AUIconView iconView, int resId) ;
  7. /**
  8. * 设置按钮的大小和颜色
  9. * @param iconView
  10. * @param size
  11. * @param color
  12. */
  13. public void setIconFont(AUIconView iconView, int size, int color);
  14. /**
  15. * 获取返回按钮
  16. * @return
  17. */
  18. public AUIconView getBackButton() ;
  19. /**
  20. * 获取左按钮
  21. * @return
  22. */
  23. public AURelativeLayout getLeftButton() ;
  24. /**
  25. * 获取右按钮
  26. * @return
  27. */
  28. public AURelativeLayout getRightButton() ;
  29. /**
  30. * 获取进度菊花
  31. * @return
  32. */
  33. public AUProgressBar getProgressBar() ;
  34. /**
  35. * 获取标题文本view
  36. * @return
  37. */
  38. public AUTextView getTitleText() ;
  39. /**
  40. * 获取标题容器
  41. * @return
  42. */
  43. public AURelativeLayout getTitleContainer() ;
  44. /**
  45. * 获取标题栏区域
  46. * @return
  47. */
  48. public AURelativeLayout getTitleBarRelative() ;
  49. @Override
  50. public void setBackgroundDrawable(Drawable backgroundDrawable) ;
  51. /**
  52. * 设置进度的旋转资源
  53. * @param progressDrawable
  54. */
  55. public void setProgressBarDrawable(Drawable progressDrawable) ;
  56. /**
  57. * 设置标题的文字及样式,参数若使用默认值,则置 null 或 0
  58. * @param text
  59. * @param textSize
  60. * @param textColor
  61. */
  62. public void setTitleText(String text, int textSize, int textColor) ;
  63. /**
  64. * 设置标题的文字
  65. * @param text
  66. */
  67. public void setTitleText(String text) ;
  68. /**
  69. * 设置返回按钮的资源、大小、颜色,若为 null 或者 0,则保持默认值
  70. * @param drawable
  71. * @param size
  72. * @param color
  73. */
  74. public void setBackBtnInfo(Object drawable, int size, int color);
  75. /**
  76. * 设置返回按钮的资源
  77. * @param drawable
  78. */
  79. public void setBackBtnInfo(Object drawable);
  80. /**
  81. * 设置左按钮的资源、大小、颜色,若为 null 或者 0,则保持默认值
  82. * @param drawable
  83. * @param size
  84. * @param color
  85. * @param isText
  86. */
  87. public void setLeftBtnInfo(Object drawable, int size, int color, boolean isText);
  88. /**
  89. * 设置左按钮的资源
  90. * @param drawable
  91. */
  92. public void setLeftButtonIcon(Drawable drawable);
  93. public void setLeftButtonIcon(String unicode);
  94. public void setLeftButtonText(String text);
  95. /**
  96. * 设置左按钮的颜色、大小
  97. * @param size
  98. * @param color
  99. * @param isText
  100. */
  101. public void setLeftButtonFont(int size, int color, boolean isText);
  102. /**
  103. * 设置右按钮的资源、大小、颜色,若为 null 或者 0,则保持默认值
  104. * @param drawable
  105. * @param size
  106. * @param color
  107. * @param isText
  108. */
  109. public void setRightBtnInfo(Object drawable, int size, int color, boolean isText) ;
  110. /**
  111. * 设置右按钮的资源
  112. * @param drawable
  113. */
  114. public void setRightButtonIcon(Drawable drawable);
  115. public void setRightButtonIcon(String unicode);
  116. public void setRightButtonText(String text);
  117. /**
  118. * 设置右按钮的颜色、大小
  119. * @param size
  120. * @param color
  121. * @param isText
  122. */
  123. public void setRightButtonFont(int size, int color, boolean isText);
  124. /**
  125. * 进度条开始旋转
  126. */
  127. public void startProgressBar();
  128. /**
  129. * 进度条停止并消失
  130. */
  131. public void stopProgressBar() ;
  132. /***
  133. * 滑动渐变默认处理,totalHeight 使用默认高度
  134. * @param currentHeight 当前高度
  135. */
  136. public void handleScrollChange(int currentHeight);
  137. /***
  138. * 滑动渐变默认处理
  139. *
  140. * @param totalHeight 总高度
  141. * @param currentHeight 当前高度
  142. */
  143. public void handleScrollChange(int totalHeight, int currentHeight) ;
  144. /**
  145. * 设置使用透明底的图案颜色(白色)
  146. */
  147. public void setColorWhiteStyle();
  148. /**
  149. * 设置使用白底的图案颜色
  150. */
  151. public void setColorOriginalStyle();
  152. /**
  153. * 设置返回按钮消失
  154. */
  155. public void setBackButtonGone();
  156. /**
  157. * 添加搜索框(不可进行输入),仅视觉调整
  158. * @param search
  159. */
  160. public void setTitle2Search(String search);
  161. /**
  162. * 搜索框转换为标题
  163. */
  164. public void setSearch2Title();
  165. /**
  166. * 搜索框白底黑字
  167. */
  168. public void setSearchColorOriginalStyle();
  169. /**
  170. * 搜索框透明底白字
  171. */
  172. public void setSearchColorTransStyle();
  173. /**
  174. * 左边图标添加红点
  175. * @param flagView
  176. */
  177. public void attachFlagToLeftBtn(AUWidgetMsgFlag flagView);
  178. /**
  179. * 右边图标添加红点
  180. * @param flagView
  181. */
  182. public void attachFlagToRightBtn(AUWidgetMsgFlag flagView) ;
  183. /**
  184. * targetView 添加红点
  185. * @param targetView
  186. * @param flagView
  187. */
  188. public void attachFlagView(AURelativeLayout container, View targetView, AUWidgetMsgFlag flagView;

自定义属性

属性名 说明 类型
backgroundDrawable 标题栏的整个背景 reference
backIconColor 返回箭头颜色 color,reference
titleText 标题文案 string,reference
titleTextSize 标题的字体大小 dimension,reference
titleTextColor 标题的字体颜色 color,reference
leftIconResid 左图标的 PNG 或者 JPG ID reference
leftIconUnicode 左图标的 Unicode string,reference
leftIconColor 左图标的颜色 color,reference
leftIconSize 左图标的大小 dimension,reference
leftText 左文本文案 string,reference
leftTextColor 左文本的颜色 color,reference
leftTextSize 左文本的大小 dimension,reference
rightIconResid 右图标的 PNG 或者 JPG ID reference
rightIconUnicode 右图标的 Unicode string,reference
rightIconColor 右图标的颜色 color,reference
rightIconSize 右图标的大小 dimension,reference
rightText 右文本文案 string,reference
rightTextColor 右文本的颜色 color,reference
rightTextSize 右文本的大小 dimension,reference

代码示例

基础使用

  1. <com.alipay.mobile.antui.basic.AUTitleBar
  2. android:layout_width="match_parent"
  3. android:layout_height="wrap_content"
  4. android:layout_marginTop="10dp"
  5. app:titleText="标题"
  6. app:titleTextSize="@dimen/AU_TEXTSIZE2"
  7. app:titleTextColor="#f64219"
  8. app:leftIconUnicode="@string/iconfont_user_setting"
  9. app:rightText="测试2"/>

滚动透明

  1. <com.alipay.mobile.antui.basic.AUTitleBar
  2. android:id="@+id/title_bar"
  3. android:layout_width="fill_parent"
  4. android:layout_height="wrap_content"
  5. app:rightIconUnicode="@string/iconfont_user_setting"
  6. app:titleText="透明标题测试" />
  1. titleBar.handleScrollChange(testImg.getMeasuredHeight(), 0);
  2. testScroll.setScrollViewListener(new AUScrollViewListener() {
  3. @Override
  4. public void onScrollChanged(ScrollView scrollView, int x, int y, int oldx, int oldy) {
  5. titleBar.handleScrollChange(y);
  6. }
  7. });

红点标题

  1. <com.alipay.mobile.antui.basic.AUTitleBar
  2. android:id="@+id/progress_title"
  3. android:layout_width="match_parent"
  4. android:layout_height="wrap_content"
  5. android:layout_marginTop="10dp"
  6. app:titleText="带刷新标题"
  7. app:leftIconUnicode="@string/iconfont_scan"
  8. app:rightIconUnicode="@string/iconfont_more"/>
  1. AUTitleBar processBar = (AUTitleBar) findViewById(R.id.progress_title);
  2. processBar.startProgressBar();
  3. WidgetMsgFlag j = new WidgetMsgFlag(this);
  4. j.showMsgFlag();
  5. processBar.attachFlagToLeftBtn(j);
  6. WidgetMsgFlag i = new WidgetMsgFlag(this);
  7. i.showMsgFlag(12);
  8. processBar.attachFlagToRightBtn(i);