android 界面提示框架WisdomProgressHUD,为金典而生
一:简述
今天给android开发者们,推荐一个金典的界面提示框架WisdomProgressHUD,使用简洁方便。
WisdomProgressHUD 是一个半透明的 HUD 指示器。 WisdomProgressHUD 是android 版SDK,由java编写,保证兼容性问题。
全局HUD单列对象,支持属性动态调整, 支持延时调用,无需开发关心释放问题,是一个强大的HUD库,使用简介,操作方便。
github 链接:https://github.com/tangjianfengVS/WisdomProgressHUD
二:WisdomProgressHUD 支持类型
1: Default (只有文字没有图片,默认使用)

2: Succee (有文字,有图片,成功提示)

3: Error (有文字,有图片,失败提示)

4: Warning (有文字,有图片,警告提示)

5: Loading (有文字,有图片,加载中提示)("Loading" 和上面的类型不同,是耗时任务,不会自动消灭任务,需要手动调用 'dismiss',结束回调任务也不会实现)

三:WisdomProgressHUD 属性设置
1: static float HUDTextSize = 13
说明: 提示时候的文字字体pd大小,设置最小值13号pd
2: static float HUDShowTime = 2500
说明: 提示时候的界面显示时间,设置最小值1秒
3: task end handler task. (任务结束回调)
public interface FinishHandler { void finish(); }
......后面有待扩展
四:WisdomProgressHUD 使用分类
1: 在 "OnCreate" 中的调用:
说明: 为了解决 android 机制不允许在 "OnCreate" 方法中向屏幕中添加UI问题,所以 "OnCreate"需要用到HUD,请调用 "startOnCreate" 方法。
2: 普通使用:
说明: 不在 "OnCreate" 中使用 "start" 方法。
3: 延迟使用:
说明:在当前时间延迟使用功能,调用 "after" 方法。
五:WisdomProgressHUD 具体API,参数
/** ---- 1: start show -----
* showState: task type, defoult value 'Default'. (任务类型)
* context : 'Context' value.
* text: show textView title value. (文字) */
public static void start(int showState, Context context, String text){ }
/** ----2: start show with 'WisdomProgressHUD.FinishHandler'-----
* showState: task type, defoult value 'Default'. (任务类型)
* context : 'Context' value.
* text: show textView title value. (文字)
* finishHandler: task end handler task. (任务结束回调) */
public static void start(int showState, Context context, String text, WisdomProgressHUD.FinishHandler finishHandler){ }
/** ---- 3: start show OnCreate -----
* Use the API when a prompt needs to be loaded in 'OnCreate'.(在 ‘OnCreate’ 中需要加载提示时使用API)
* showState: task type, defoult value 'Default'. (任务类型)
* context : 'Context'.
* text: show textView title value. (文字)
* ViewGroup: The 'Context' rootLayout. (Context的底层布局) */
public static void startOnCreate(int showState, Context context, String text, ViewGroup rootView){ }
/** ---- 4:start show OnCreate with 'WisdomProgressHUD.FinishHandler' -----
* Use the API when a prompt needs to be loaded in 'OnCreate'.(在 ‘OnCreate’ 中需要加载提示时使用API)
* showState: task type, defoult value 'Default'. (任务类型)
* context : 'Context'.
* text: show textView title value. (文字)
* ViewGroup: The 'Context' rootLayout. (Context的底层布局)
* finishHandler: task end handler task. (任务结束回调) */
public static void startOnCreate(int showState, Context context, String text, ViewGroup rootView, WisdomProgressHUD.FinishHandler finishHandler){ }
/** ----- 5: after task -----
* delay: after task time value. */
public static void after(final int showState, final Context context, final String text, long delay){ }
/** ----- 6: after task -----
* delay: after task time value. */
public static void after(final int showState, final Context context, final String text, final long delay, final WisdomProgressHUD.FinishHandler finishHandler){ }
/** 7: dismiss(手动释放)*/
public static void dismiss() { }
六:WisdomScreenUtils: 提供屏幕尺寸转换处理功能
/** 根据手机的分辨率从 dp 的单位 转成为 px(像素) */
public static int dip2px(Context context, float dpValue) { return (int) }
/** 根据手机的分辨率从 px(像素) 的单位 转成为 dp */
public static int px2dip(Context context, float pxValue) { return (int) }
/** 获取屏幕密度 */
public static float getScreenDensity(Context context) { return float }
/** 获取屏幕宽度(像素) */
public static int getScreenWidthPixels(Context context) { return int }
/** 获取屏幕宽度(dp) */
public static float getScreenWidthDp(Context context) { return float }
/** 获取屏幕高度(像素) */
public static int getScreenHeightPixels(Context context) { return int }
/** 获取屏幕高度(dp) */
public static float getScreenHeightDp(Context context) { return float }
/** 获取状态栏高度 */
public static int getStatusHeight(Context context) { return int }
/** 保存屏幕截图到本地
* @param activity
* @param strFileName 文件全路径:例如 "/sdcard/screen_shot_20160424.jpg" */
public static void savScreenShot(Activity activity, String strFileName) { }
/** 截图
* 也可以调用shell命令去截图 screencap -p test.png
* @param activity 截取activity 所在的页面的截图,即使退到后台也是截取这个activity */
private static Bitmap takeShot(Activity activity) { return Bitmap }
七: Android Studio SDK 集成:
1: build.gradle 配置 'https://jitpack.io' :
allprojects {
repositories { maven { url 'https://jitpack.io' } }
}
2: build.gradle 配置 'com.github.tangjianfengVS:WisdomProgressHUD:0.0.1' :
dependencies {
implementation 'com.github.tangjianfengVS:WisdomProgressHUD:0.0.1'
}
八:结语:
WisdomProgressHUD Android SDK,界面设计漂亮,并且是一款金典的HUD,并且支持屏蔽任务期间的用户交互。
WisdomProgressHUD Android SDK,开发中使用方便,性能高效,自动管理生命周期,兼容'Oncreate'方法中调用,非常推荐给大家使用!
android 界面提示框架WisdomProgressHUD,为金典而生的更多相关文章
- Xamarin Android设置界面提示类型错误
Xamarin Android设置界面提示类型错误 错误信息:Integer types not allow (at ‘padding’ with value ’10’)Android界面属性的长度和 ...
- android开源项目框架大全:
android开源项目框架大全: 1.多页切换TabHost9 高仿网易云音乐客户端的Home页面切换Tabhost 高仿网易云音乐客户端的Home页面切换Tabhost,并且三角形是透明的,实现方式 ...
- 各种Android UI开源框架 开源库
各种Android UI开源框架 开源库 转 https://blog.csdn.net/zhangdi_gdk2016/article/details/84643668 自己总结的Android开源 ...
- Android开源测试框架学习
近期因工作需要,分析了一些Android的测试框架,在这也分享下整理完的资料. Android测试大致分三大块: 代码层测试 用户操作模拟,功能测试 安装部署及稳定性测试 代码层测试 对于一般java ...
- [转]Android中Xposed框架篇—利用Xposed框架实现拦截系统方法
一.前言 关于Xposed框架相信大家应该不陌生了,他是Android中Hook技术的一个著名的框架,还有一个框架是CydiaSubstrate,但是这个框架是收费的,而且个人觉得不怎么好用,而Xpo ...
- Android界面布局基本知识简述
Android手机操作系统在模拟器中进行相关的编写,可以帮助我们实现各种功能需求.尤其是在界面的操作方面显得更为突出.在这里我们就可以对Android界面布局的相关操作来对这方面的知识进行一个深入的了 ...
- Android核心分析之二十Android应用程序框架之无边界设计意图
Android应用程序框架1 无边界设计理念 Android的应用框架的外特性空间的描述在SDK文档(http://androidappdocs.appspot.com/guide/topics/fu ...
- eclipse的android智能提示设置
eclipse的android智能提示设置 分类: android 技术2011-12-07 23:13 3069人阅读 评论(0) 收藏 举报 eclipseandroidtriggersjavaf ...
- Android应用程序框架之无边界设计意图
Android的应用框架的外特性空间的描述在SDK文档有十分清楚的描述,Android应用的基本概念,组件生命周期等等有详细的描述.在外特性空间中,Android提供了Activity,Service ...
随机推荐
- Centos 7 防火墙 firewalld 简单使用说明
1.firewalld简介 firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务:第二个就是加入了防火墙的“zone”概念 2.firewalld命令行界面管 ...
- golang开发:类库篇(一) Zap高性能日志类库的使用
为什么要用zap来写日志 原来是写PHP的,一直用的error_log,第一次写Go项目的时候,还真不知道该怎么写日志,后来就按照PHP的写法自己不成规范的捣鼓写.去了新公司之后,发现用的是zap.后 ...
- Mybatis中的collection和association一关系
collection 一对多和association的多对一关系 学生和班级的一对多的例子 班级类: package com.glj.pojo; import java.io.Serializable ...
- Confluence安装、汉化及jira整合
今天上午装了一下Confluence,刚开始装的时候成功了,成功后进入数据库配置阶段,本人想把jira和confluence整合一起用,刚开始提示数据库连接问题,后来一直问题提示Connection ...
- 【SQL-JOIN】mysql中left joinn、right join、full join以及inner join
看到这两张图的时候就觉得太棒了,年轻的时候曾经爬了好多坑~~~~~~
- 【协议】TCP与UDP
转载地址:https://blog.csdn.net/qq_34988624/article/details/85856848 1.为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不 ...
- 北京信息科技大学第十一届程序设计竞赛(重现赛)I
I andy种树 题目链接:https://ac.nowcoder.com/acm/contest/940/I 题目描述 andy在他的庄园里种了n棵树,排列成一排,标号为1到n.最开始的时候n棵树的 ...
- 基于STM32之UART串口通信协议(一)详解
一.前言 1.简介 写的这篇博客,是为了简单讲解一下UART通信协议,以及UART能够实现的一些功能,还有有关使用STM32CubeMX来配置芯片的一些操作,在后面我会以我使用的STM32F429开发 ...
- flume1.9 用户指南(中文版)
概述 Apache Flume是一个分布式,可靠且可用的系统,用于有效地从许多不同的source收集,聚合和移动大量日志数据到集中式数据存储. Apache Flume的使用不仅限于日志数据聚合.由于 ...
- java基础类型源码解析之HashMap
终于来到比较复杂的HashMap,由于内部的变量,内部类,方法都比较多,没法像ArrayList那样直接平铺开来说,因此准备从几个具体的角度来切入. 桶结构 HashMap的每个存储位置,又叫做一个桶 ...