一:简述

今天给android开发者们,推荐一个金典的界面提示框架WisdomProgressHUD,使用简洁方便。

WisdomProgressHUD 是一个半透明的 HUD 指示器。 WisdomProgressHUD 是android 版SDK,由java编写,保证兼容性问题。

全局HUD单列对象,支持属性动态调整, 支持延时调用,无需开发关心释放问题,是一个强大的HUD库,使用简介,操作方便。

github 链接:https://github.com/tangjianfengVS/WisdomProgressHUD

二:WisdomProgressHUD 支持类型

1:  Default  (只有文字没有图片,默认使用)

 
Default

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

 
Succee

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

 
Error

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

 
Warning

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

 
Loading

三: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,为金典而生的更多相关文章

  1. Xamarin Android设置界面提示类型错误

    Xamarin Android设置界面提示类型错误 错误信息:Integer types not allow (at ‘padding’ with value ’10’)Android界面属性的长度和 ...

  2. android开源项目框架大全:

    android开源项目框架大全: 1.多页切换TabHost9 高仿网易云音乐客户端的Home页面切换Tabhost 高仿网易云音乐客户端的Home页面切换Tabhost,并且三角形是透明的,实现方式 ...

  3. 各种Android UI开源框架 开源库

    各种Android UI开源框架 开源库 转 https://blog.csdn.net/zhangdi_gdk2016/article/details/84643668 自己总结的Android开源 ...

  4. Android开源测试框架学习

    近期因工作需要,分析了一些Android的测试框架,在这也分享下整理完的资料. Android测试大致分三大块: 代码层测试 用户操作模拟,功能测试 安装部署及稳定性测试 代码层测试 对于一般java ...

  5. [转]Android中Xposed框架篇—利用Xposed框架实现拦截系统方法

    一.前言 关于Xposed框架相信大家应该不陌生了,他是Android中Hook技术的一个著名的框架,还有一个框架是CydiaSubstrate,但是这个框架是收费的,而且个人觉得不怎么好用,而Xpo ...

  6. Android界面布局基本知识简述

    Android手机操作系统在模拟器中进行相关的编写,可以帮助我们实现各种功能需求.尤其是在界面的操作方面显得更为突出.在这里我们就可以对Android界面布局的相关操作来对这方面的知识进行一个深入的了 ...

  7. Android核心分析之二十Android应用程序框架之无边界设计意图

    Android应用程序框架1 无边界设计理念 Android的应用框架的外特性空间的描述在SDK文档(http://androidappdocs.appspot.com/guide/topics/fu ...

  8. eclipse的android智能提示设置

    eclipse的android智能提示设置 分类: android 技术2011-12-07 23:13 3069人阅读 评论(0) 收藏 举报 eclipseandroidtriggersjavaf ...

  9. Android应用程序框架之无边界设计意图

    Android的应用框架的外特性空间的描述在SDK文档有十分清楚的描述,Android应用的基本概念,组件生命周期等等有详细的描述.在外特性空间中,Android提供了Activity,Service ...

随机推荐

  1. Centos 7 防火墙 firewalld 简单使用说明

    1.firewalld简介 firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务:第二个就是加入了防火墙的“zone”概念   2.firewalld命令行界面管 ...

  2. golang开发:类库篇(一) Zap高性能日志类库的使用

    为什么要用zap来写日志 原来是写PHP的,一直用的error_log,第一次写Go项目的时候,还真不知道该怎么写日志,后来就按照PHP的写法自己不成规范的捣鼓写.去了新公司之后,发现用的是zap.后 ...

  3. Mybatis中的collection和association一关系

    collection 一对多和association的多对一关系 学生和班级的一对多的例子 班级类: package com.glj.pojo; import java.io.Serializable ...

  4. Confluence安装、汉化及jira整合

    今天上午装了一下Confluence,刚开始装的时候成功了,成功后进入数据库配置阶段,本人想把jira和confluence整合一起用,刚开始提示数据库连接问题,后来一直问题提示Connection ...

  5. 【SQL-JOIN】mysql中left joinn、right join、full join以及inner join

    看到这两张图的时候就觉得太棒了,年轻的时候曾经爬了好多坑~~~~~~

  6. 【协议】TCP与UDP

    转载地址:https://blog.csdn.net/qq_34988624/article/details/85856848 1.为什么会有TCP/IP协议 在世界上各地,各种各样的电脑运行着各自不 ...

  7. 北京信息科技大学第十一届程序设计竞赛(重现赛)I

    I andy种树 题目链接:https://ac.nowcoder.com/acm/contest/940/I 题目描述 andy在他的庄园里种了n棵树,排列成一排,标号为1到n.最开始的时候n棵树的 ...

  8. 基于STM32之UART串口通信协议(一)详解

    一.前言 1.简介 写的这篇博客,是为了简单讲解一下UART通信协议,以及UART能够实现的一些功能,还有有关使用STM32CubeMX来配置芯片的一些操作,在后面我会以我使用的STM32F429开发 ...

  9. flume1.9 用户指南(中文版)

    概述 Apache Flume是一个分布式,可靠且可用的系统,用于有效地从许多不同的source收集,聚合和移动大量日志数据到集中式数据存储. Apache Flume的使用不仅限于日志数据聚合.由于 ...

  10. java基础类型源码解析之HashMap

    终于来到比较复杂的HashMap,由于内部的变量,内部类,方法都比较多,没法像ArrayList那样直接平铺开来说,因此准备从几个具体的角度来切入. 桶结构 HashMap的每个存储位置,又叫做一个桶 ...