推荐一个腾讯出品的Android UI框架 —— QMUI

近期发现了一个腾讯出品的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

你可能感兴趣的:(Android)