近期发现了一个腾讯出品的Android UI框架库,旨在快速开发,这些没有什么可多说的。(在最后附上SDK官网和GitHub地址)说几个比较常用的,具体的可以去看官方的文档:
UI类
QMUIFloatLayout
类似 CSS 里float: left的浮动布局,从左到右排列子 View 并自动换行。支持以下特性:
控制子View之间的垂直/水平间距。
控制子View 的水平对齐方向(左对齐/居中/右对齐)。
限制子View 的个数或行数。
QMUIFontFitTextView
使TextView 在宽度固定的情况下,文字多到一行放不下时能缩小文字大小来自适应
QMUILinkTextView
使TextView 能自动识别 URL、电话、邮箱地址,相比TextView有以下特点:
1、可以设置链接的样式。
2、可以设置链接的点击事件。
QMUIObservableScrollView
可以监听滚动事件的 ScrollView,并能在滚动回调中获取每次滚动前后的偏移量。
QMUIProgressBar
一个进度条控件,通过颜色变化显示进度,支持环形和矩形两种形式,主要特性如下:
支持在进度条中以文字形式显示进度,支持修改文字的颜色和大小。可以通过 xml 属性修改进度背景色,当前进度颜色,进度条尺寸。支持限制进度的最大值。
QMUIPullRefreshLayout
下拉刷新控件。支持自定义 RefreshView(表示正在刷新的 View),触发刷新的位置等特性。
QMUIRadiusImageView
提供为图片添加圆角、边框、剪裁到圆形或其他形状等功能。
QMUIRoundButton
对 Button 提供圆角功能,支持以下特性:
指定圆角的大小。分别指定不同方向的圆角大小。指定圆角的大小为高度的一半,并跟随高度变化自适应圆角大小。支持分别指定背景色和边框色,指定颜色时支持使用 color 或 ColorStateList。
QMUIRoundButtonDrawable
使用该 Drawable 可以方便地生成圆角矩形/圆形 Drawable,提供设置背景色、描边大小和颜色、圆角自适应 View 高度等特性。
QMUITabSegment
用于横向多个 Tab 的布局,包含多个特性:
可以用 xml 或 QMUITabSegment 提供的 set 方法统一配置文字颜色、icon 位置、是否要下划线等。每个 Tab 都可以非常灵活的配置,内容上支持文字和 icon 的显示,icon 支持选中态,支持内容的排版对齐方向设置,支持显示红点,支持插入自定义的 View,支持监听双击事件等。可以通过 setupWithViewPager(ViewPager) 方法与 ViewPager 绑定
QMUITopBar
通用的顶部 Bar。提供了以下功能:
在左侧/右侧添加图片按钮/文字按钮/自定义View。
设置标题/副标题,且支持设置标题/副标题的水平对齐方式。
QMUITopBarLayout
对 QMUITopBar 的包裹类,并代理了 QMUITopBar 的方法。配合 QMUIWindowInsetLayout 使用,可使 QMUITopBar 在支持沉浸式状态栏的界面中顶部延伸到状态栏。
QMUIVerticalTextView
在 TextView 的基础上支持文字竖排。
Helper工具类
QMUIDeviceHelper
获取设备信息的工具类,按照功能类型来划分,总共包含以下几个特性:
判断设备为手机/平板。判断设备是否为魅族手机。判断当前系统是否为 Flyme 系统。判断当前系统是否为 MIUI 系统。判断当前是否拥有悬浮窗权限。
QMUIDisplayHelper
屏幕相关的工具类,按照功能类型来划分,总共包含以下几个特性:
方便地获取一个 DisplayMetrics 实例。获取屏幕信息,包括屏幕密度、屏幕宽度和高度、状态栏高度、ActionBar 高度等。获取设备硬件信息,包括是否有可用摄像头、是否有硬件菜单、是否有网络、SD Card 是否可用、当前选择的国家语言等。判断当前是否处于全屏状态,控制进入/退出全屏状态。dp 与 px 数值的相互转化。
QMUIStatusBarHelper
状态栏相关的工具类,按照功能类型来划分,总共包含以下几个特性:
快速实现沉浸式状态栏(支持 4.4 以上版本的 MIUI 和 Flyme,以及 5.0 以上版本的其他 Android)。快速设置状态栏为黑色或白色字体图标(支持 4.4 以上版本 MIUI 和 Flyme,以及 6.0 以上版本的其他 Android)。提供多个常用的工具方法,如获取状态栏高度、判断当前是否全屏等等。
QMUIViewHelper
View 工具类,按照功能类型来划分,总共包含以下几个特性:
对 ImageView 进行处理,可以按比例缩放图片。对 View 做背景颜色变化动画,支持多个动画参数。对 View 做进退场动画,支持透明度变化和上下位移两种方式。提供多个常用的 View 相关工具方法,如对 View 设置单个方向的 padding、从 ViewStub 中获取一个 View、判断 ListView 是否已经滚动到底部等等。
总结至此。只是总结了一些比较常用的和基本的,如果想全面了解的话,请移步 官网 和 Github