框架中UI主题由顶至低,目前可分为4层:XUIRootTheme、XUIBaseTheme、XUITheme和XUITheme.xxx。
- XUIRootTheme
- XUIBaseTheme
基础 Theme,继承XUIRootTheme,定义所有公用的 style。这里主要设置的是应用全局性的样式,包括:colorAccent、colorPrimary、colorPrimaryDark、android:textColorPrimary、windowNoTitle、selectableItemBackground、android:textViewStyle、android:listSelector、android:listDivider、android:gridViewStyle等
- XUITheme
- XUITheme.xxx
XUITheme.Launch:启动页面的主题
XUITheme.Tablet.Big:大平板的主题
XUITheme.Phone:手机的主题
XUIDialog:基础对话框的主题
XUIDialog.Custom:自定义对话框的主题
主题属性使用的方式进行引用。
全局属性
标题栏属性
属性名 | 类型 | 默认值(手机/小平板/大平板) | 备注 |
---|---|---|---|
xui_actionbar_color | color | #299EE3 | 标题栏的背景颜色 |
xui_actionbar_height | dimension | 52dp/60dp/70dp | 标题栏的高度 |
xui_actionbar_title_text_size | dimension | 18sp/21sp/24sp | 标题文字的大小 |
xui_actionbar_action_text_size | dimension | 15sp/18sp/22sp | 标题栏两边Action文字的大小 |
xui_actionbar_sub_text_size | dimension | 12sp/14sp/16sp | 副标题文字的大小 |
xui_actionbar_action_padding | dimension | 5dp/6dp/7dp | 标题栏两边Action图片的内间距 |
xui_actionbar_side_text_padding | dimension | 14dp/16dp/18dp | 标题栏两边Action文字的内间距 |
按钮属性
属性名 | 类型 | 默认值(手机/小平板/大平板) | 备注 |
---|---|---|---|
xui_round_btn_bg_color | color | @color/xui_transparent | 圆角按钮的背景颜色 |
xui_round_btn_border_color | color | @color/xui_default_round_btn_blue_border | 圆角按钮的边框颜色 |
xui_round_btn_text_color | color | @color/xui_default_round_btn_blue_text | 圆角按钮的文字颜色 |
xui_btn_view_radius | dimension | 5dp/5dp/7dp | 按钮的圆角度数 |
xui_btn_view_width | dimension | 104dp/112dp/148dp | 按钮的宽度 |
xui_btn_view_height | dimension | 32dp/38dp/52dp | 按钮的高度 |
xui_btn_view_text_size | dimension | 13sp/16sp/21sp | 按钮的文字大小 |
xui_btn_view_border_width | dimension | 0.5dp/1dp/1dp | 按钮的边框宽度 |
xui_config_icon_drawable_padding | dimension | 7dp/9dp/12dp | 按钮图标的内间距 |
文字属性
属性名 | 类型 | 默认值(手机/小平板/大平板) | 备注 |
---|---|---|---|
xui_config_size_title_text | dimension | 18sp/21sp/24sp | 标题文字的大小 |
xui_config_size_content_text | dimension | 15sp/18sp/22sp | 正文文字的大小 |
xui_config_size_explain_text | dimension | 12sp/14sp/16sp | 辅助说明文字的大小 |
xui_config_color_title_text | color | #223B53 | 标题文字的颜色 |
xui_config_color_content_text | color | #6A798E | 正文文字的颜色 |
xui_config_color_explain_text | color | #9FABBC | 辅助说明文字的颜色 |
输入框属性
pop弹出框属性
属性名 | 类型 | 默认值(手机/小平板/大平板) | 备注 |
---|---|---|---|
xui_popup_bg | reference | @drawable/xui_popup_bg | 弹出窗的背景 |
xui_popup_arrow_down | reference | @drawable/xui_popup_arrow_down | 弹出窗向下的箭头 |
xui_popup_arrow_up | reference | @drawable/xui_popup_arrow_up | 弹出窗向上的箭头 |
xui_popup_arrow_up_margin_top | dimension | 17dp | 弹出窗向上箭头距离顶部的高度 |
xui_popup_arrow_down_margin_bottom | dimension | 17dp | 弹出窗向下箭头距离底部的高度 |
xui_popup_width | dimension | 133dp/174dp/232dp | 弹出窗的最大宽度 |
dialog属性
属性名 | 类型 | 默认值(手机/小平板/大平板) | 备注 |
---|---|---|---|
xui_dialog_radius_size | dimension | 7dp/8dp/10dp | 对话框的圆角大小 |
xui_dialog_background_dim_amount | float | 0.6 | 对话框透明背景的灰度 |
xui_dialog_loading_padding_size | dimension | 26dp/30dp/40dp | loading对话框的内间距 |
xui_dialog_loading_min_size | dimension | 100dp/150dp/200dp | loading对话框的最小尺寸 |
loading加载属性
属性名 | 类型 | 默认值(手机/小平板/大平板) | 备注 |
---|---|---|---|
xui_loading_view_size | dimension | 78dp/100dp/135dp | loading控件的尺寸 |
xui_loading_view_width | dimension | 4dp/5dp/6dp | loading环的宽度 |
xui_loading_margin_size | dimension | 6dp/10dp/14dp | loading控件的外间距 |
mini_loading_view_size | dimension | 20dp/30dp/40dp | 迷你loading控件的尺寸 |
如何自定义
自定义基础主题属性
- 通用颜色属性
- 通用尺寸属性
属性名 | 类型 | 备注 |
---|---|---|
xui_config_content_spacing_horizontal | dimension | margin 和 padding 等使用的内容通用水平间距 |
xui_config_content_spacing_vertical | dimension | margin 和 padding 等使用的内容通用垂直间距 |
xui_alpha_pressed | dimension | 控件点击时的透明度 |
xui_alpha_disabled | dimension | 控件不可点击时的透明度 |
xui_config_divider_height | dimension | 分隔线的高度 |
xui_config_separator_height | dimension | 分割线的高度 |
xui_config_size_title_text | dimension | 标题文字的颜色 |
xui_config_size_content_text | dimension | 正文文字的颜色 |
xui_config_size_explain_text | dimension | 解释说明文字的颜色 |
xui_btn_view_radius | dimension | 按钮通用的圆角大小 |
xui_btn_view_width | dimension | 按钮通用的宽度 |
xui_btn_view_height | dimension | 按钮通用的高度 |
xui_btn_view_text_size | dimension | 按钮通用的文字大小 |
xui_btn_view_border_width | dimension | 按钮边框通用的宽度 |
xui_config_size_spinner_text | dimension | 下拉框文字的大小 |
xui_dialog_radius_size | dimension | 通用弹窗的圆角大小 |
xui_dialog_background_dim_amount | dimension | 通用弹窗背景阴影的透明度 |
自定义通用组件的默认主题样式
- 标题栏属性
属性名 | 类型 | 备注 |
---|---|---|
xui_actionbar_color | color | 标题栏的背景颜色 |
xui_actionbar_text_color | color | 标题栏文字的颜色 |
xui_actionbar_immersive | boolean | 是否支持沉浸式标题栏 |
xui_actionbar_ic_navigation_back | reference | 标题栏返回箭头图标 |
xui_actionbar_height | dimension | 标题栏的高度 |
xui_actionbar_title_text_size | dimension | 标题栏标题文字的大小 |
xui_actionbar_sub_text_size | dimension | 标题栏副标题文字的大小 |
xui_actionbar_action_text_size | dimension | 标题栏动作文字的大小 |
xui_actionbar_action_padding | dimension | 标题栏动作图片的padding |
xui_actionbar_side_text_padding | dimension | 标题栏两侧文字的padding |
- 通用组件样式属性
属性名 | 类型 | 备注 |
---|---|---|
TitleBarStyle | reference | 标题栏组件TitleBar |
XUIGroupListViewStyle | reference | 通用列表组控件XUIGroupListView |
XUICommonListItemViewStyle | reference | 通用列表项控件XUICommonListItemView |
XUIGroupListSectionViewStyle | reference | 通用列表头尾控件XUIGroupListSectionHeaderFooterView |
MiniLoadingStyle | reference | 迷你加载控件MiniLoadingView |
RulerViewStyle | reference | 刻度尺控件RulerView |
RadiusImageViewStyle | reference | 提供图片添加圆角、边框、剪裁到圆形或其他形状等功能的RadiusImageView |
TabSegmentStyle | reference | 选项卡组件TabSegment |
VerifyCodeEditTextStyle | reference | 验证码输入框VerifyCodeEditText |
HorizontalProgressViewStyle | reference | 水平进度条HorizontalProgressView |
CircleProgressViewStyle | reference | 环形进度条CircleProgressView |
ClearEditTextStyle | reference | 可清空输入的输入框ClearEditText |
PasswordEditTextStyle | reference | 可显示隐藏密码的输入框PasswordEditText |
MaterialEditTextStyle | reference | Material Design风格的输入框MaterialEditText |
ValidatorEditTextStyle | reference | 可以自动校验的输入框ValidatorEditText |
MultiLineEditTextStyle | reference | 多行计数输入框MultiLineEditText |
EasyIndicatorStyle | reference | 简单索引控件EasyIndicator |
MultipleStatusViewStyle | reference | 多状态布局控件MultipleStatusView |
StatusViewStyle | reference | 状态控件StatusView |
CountDownButtonStyle | reference | 倒计时按钮CountDownButton |
AutoFitTextViewStyle | reference | 自适应文字大小的组件AutoFitTextView |
RippleViewStyle | reference | 点击水波效果 的组件RippleView |
BannerLayoutStyle | reference | 使用RecyclerView实现Banner的BannerLayout |