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 ...
随机推荐
- 曹工说Tomcat2:自己撸一个简易Tomcat Digester
一.前言 框架代码其实也没那么难,大家不要看着源码就害怕,现在去看 Tomcat 3.0的代码,保证还是看得懂一半,照着撸一遍基本上很多问题都能搞定了.这次我们就模拟 Tomcat 中的 Digest ...
- 系统学习 Java IO (十三)----字符读写 Reader/Writer 及其常用子类
目录:系统学习 Java IO---- 目录,概览 Reader Reader 类是 Java IO API 中所有 Reader 子类的基类. Reader 类似于 InputStream ,除了它 ...
- 【静态NAT】 为什么子网可以ping父网,但是父网ping不通子网?
为什么子网可以ping父网,但是父网ping不通子网? 这就好比在公网中ping一个192.168.0.x的子网,roter无法找到这个子网的地址,所以会把package丢掉. 如何解决呢,可以在路由 ...
- Codeforces Round #568 (Div. 2)B
B. Email from Polycarp 题目链接:http://codeforces.com/contest/1185/problem/B 题目: Methodius received an e ...
- JavaScript 事件(捕获和冒泡 兼容性写法)
事件 浏览器客户端上客户触发的行为都称为事件 所有的事件都是天生自带的 不需要人为绑定 只需要我们去触发通过obj.事件名=function(){} 我们给元素的事件绑定了一个方法 事件名:on ...
- Linux下无法执行tree命令问题
Linux下不能使用tree命令,是因为没有安装命令, 执行下面代码就行了 yum install tree -y
- c# 图文添加文字斜水印
项目中有个添加水印的需求,需要给图片铺满斜水印. 网上搜了半天全是添加在图片上.下.左.右的案例. 于是按照网上的某一段案例自己修改了一些代码. Bitmap bitmap = new Bitmap( ...
- c++2的幂次方
c++2的幂次方 题目描述 任何一个正整数都可以用2的幂次方表示. 同时约定用括号来表示方次,即a的b次,可以表示为a(b). 由此可知,137可以表示为: 2(7)+2(3)+2(0) 进一步: ...
- 001_html基本结构
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 2017普及组D1T3 洛谷P3956 棋盘
2017普及组D1T3 洛谷P3956 棋盘 原题 题目描述 有一个m×m的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的.你现在要从棋盘的最左上角走到棋盘的最右下角. 任何一个时刻,你所站在 ...