博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于MBProgressHUD仿写的Swift版加载控件NGProgressHUD
阅读量:6808 次
发布时间:2019-06-26

本文共 2226 字,大约阅读时间需要 7 分钟。

最近的项目是用swift写的,而一些库还是OC版,基于MBProgressHUD的稳定、简单,还有设计漂亮,所以就使用Swift仿写一个。

使用

因为是基本仿写MBProgressHUD,所以使用的方式和MBProgressHUD基本一样,当然,也加入了几个自己写的加载模式,一下是现在支持的几个模式

1.默认模式GrayIndicator(小菊花):

_ = NGProgressHUD.showHUDAdded(view, true)复制代码

2.大菊花加载模式LargeWhiteIndicator:

let hud = NGProgressHUD.showHUDAdded(view, true)    hud.mode = .LargeWhiteIndicator复制代码

3.提示语加载模式IndicatorAndText:

let hud = NGProgressHUD.showHUDAdded(view, true)    hud.animationType = .ZoomIn    hud.mode = .IndicatorAndText    hud.labelText = "Capture One"    hud.detailsLabelText = "This is a hello world expample erro date and girl for the handsome man, get out of my way.This is a hello world expample erro date and girl for the handsome man, get out of my way.This is a hello world expample erro date and girl for the handsome man, get out of my way.This is a hello world expample erro date and girl for the handsome man, get out of my way."复制代码

4.旋转环模式Rotate:

let hud = NGProgressHUD(frame: view.bounds)    view.addSubview(hud)    hud.mode = .Rotate    hud.show(true)复制代码

5.单文本提示模式

该模式下可以应用在一些需要文本提示语的场景,设置isUserInteractionEnabled可以不用和加载控件直接交互。

let hud = NGProgressHUD(frame: view.bounds)    hud.backgroundColor = UIColor.yellow.withAlphaComponent(0.1)    view.addSubview(hud)    hud.mode = .Text    hud.labelText = "章节一"    hud.detailsLabelText = "事件发生了封建势力开始的考虑是否"    hud.isUserInteractionEnabled = false    hud.show(true)复制代码

6.圆环进度模式:

设计该模式是方便以后在加载图片的场景中应用。

let hud = NGProgressHUD(frame: view.bounds)    view.addSubview(hud)    hud.mode = .Progress    hud.progress = 0.4    hud.show(true)复制代码

7.自定义视图模式:

一切为了以后便捷地扩展各种加载框。

let customView = UIView(frame: CGRect(x: 100, y: 100, width: 80, height: 80))        customView.backgroundColor = UIColor.red        let swbtn = UISwitch()        customView.addSubview(swbtn)        view.addSubview(customView)                let hud = NGProgressHUD(frame: view.bounds)        view.addSubview(hud)        hud.customView = customView        hud.mode = .CustomView        hud.show(true)复制代码

8.加载成功模式:

在一些成功或是完成的场景中使用,对于失败的场景,可以在上一个自定义模式中定义。

let hud = NGProgressHUD(frame: view.bounds)    view.addSubview(hud)    hud.mode = .SucceedStatus    hud.show(true)    hud.addSucceedAnimation("支付成功")复制代码

:在目录Swift Demo/Animation项目中。

转载地址:http://bgtwl.baihongyu.com/

你可能感兴趣的文章
Java内存模型
查看>>
AppLinks使用详解
查看>>
JavaScript正则表达式19例(11)
查看>>
UNIX发展历史流程图
查看>>
负载均衡之LVS详解
查看>>
WP7实例篇之土豆搜索器(2)
查看>>
图解Cisco Packet Tracert之利用TFTP来升级路由器的IOS
查看>>
使用SDM配置基于IPsec 加密的GRE隧道
查看>>
Windows远程桌面及其相关问题
查看>>
Spring Security 学习之X.509认证
查看>>
nginx技术(4)nginx地址重写
查看>>
Discuss about PortableRemoteObject.narrow()
查看>>
用SHELL脚本自动化安装Nagios服务器端和客户端的
查看>>
System Center 2012 R2 CM系列之配置configuration manager防火墙设置
查看>>
我的CSS命名规则
查看>>
Configuration Manager 2012 R2系统需求
查看>>
OMF添加在线日志_OCP学习笔记(4)
查看>>
【Vue】详解Vue生命周期
查看>>
MySQL数据库无法启动的简单排错
查看>>
虚拟化技术在企业中的实际应用
查看>>