1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > swift实现提示框第三方库:MBProgressHUD

swift实现提示框第三方库:MBProgressHUD

时间:2019-12-18 01:31:05

相关推荐

swift实现提示框第三方库:MBProgressHUD

GitHud的下载地址是:/jdg/MBProgressHUD/

下载完成后,将MBProgressHUD.h和MBProgressHUD.m拖入已经新建好的Swift项目。因为使用的swift语言,所以拖入项目的时候会提示是否新建一个桥接objective-c与swift的文件,选择是即可。此步骤会自动新建一个文件。如图:

在该文件(MBProgressHUDDemo-Bridging-Header.h)中,有这样的一句注释:

// Use this file to impZ喎�"/kf/ware/vc/" target="_blank" class="keylink">vcnQgeW91ciB0YXJnZXQmcnNxdW87cyBwdWJsaWMgaGVhZGVycyB0aGF0IHlvdSB3b3VsZCBsaWtlIHRvIGV4cG9zZSB0byBTd2lmdC48L3A+DQo8cD7S4su806a4w8rHtbzI6823zsS8/qOsyrm1w8TjtcRzd2lmdL/J0tTKudPDzc+9+MiltcTOxLz+oaM8YnIgLz4NCtLytMujrNTauMPOxLz+1tDQtNXiw7TSu77ko7o8L3A+DQo8cHJlIGNsYXNzPQ=="brush:java;">#import "MBProgressHUD.h"

1

会发现在Build Settings–>Swift complier -Code Generation中,多了一个项,个人理解是桥接文件MBProgressHUDDemo-Bridging-Header.h的声明。如果有不同见解,欢迎指正。如图:

尝试了几种样式的提示框。使用按键来触发。

以下是整个Demo的代码:

//// ViewController.swift// MBProgressHUDDemo// MBProgressHUD GitHud地址:/jdg/MBProgressHUD/// Created by mobao on 15/7/1.// Copyright (c) mobao. All rights reserved.//import UIKitclass ViewController: UIViewController {@IBAction func TextDialogBtn(sender: AnyObject) {showTextDialog()}@IBAction func ProgressDialogBtn1(sender: AnyObject) {showProgressDialog1()}@IBAction func ProgressDialogBtn2(sender: AnyObject) {showProgressDialog2()}@IBAction func CustomDialogBtn(sender: AnyObject) {showCustomDialog()}@IBAction func AllTextDialogBtn(sender: AnyObject) {showAllTextDialog()}var HUD : MBProgressHUD?override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view, typically from a nib.}//文本提示框func showTextDialog(){//初始化对话框,置于当前的View当中HUD = MBProgressHUD(view: self.view)self.view.addSubview(HUD!)//如果设置此属性,则当前view置于后台HUD?.dimBackground = true//设置对话框文字HUD?.labelText = "请稍等"HUD?.showAnimated(true, whileExecutingBlock: {sleep(3)}, completionBlock: {self.HUD?.removeFromSuperview()self.HUD = nil})}//框型进度提示func showProgressDialog1(){//初始化对话框,置于当前的View当中HUD = MBProgressHUD(view: self.view)self.view.addSubview(HUD!)//如果设置此属性,则当前view置于后台HUD?.dimBackground = true//设置对话框文字HUD?.labelText = "正在加载"//设置模式为进度框形的HUD?.mode = MBProgressHUDMode.DeterminateHUD?.showAnimated(true, whileExecutingBlock: {var progress : Float = 0.0while(progress < 1.0){progress += 0.01self.HUD?.progress = progressusleep(50000)}}, completionBlock: {self.HUD?.removeFromSuperview()self.HUD = nil})}//进度条提示func showProgressDialog2(){//初始化对话框,置于当前的View当中HUD = MBProgressHUD(view: self.view)self.view.addSubview(HUD!)//如果设置此属性,则当前view置于后台HUD?.dimBackground = true//设置对话框文字HUD?.labelText = "正在加载"//设置模式为进度条HUD?.mode = MBProgressHUDMode.DeterminateHorizontalBarHUD?.showAnimated(true, whileExecutingBlock: {var progress : Float = 0.0while(progress < 1.0){progress += 0.01self.HUD?.progress = progressusleep(50000)}}, completionBlock: {self.HUD?.removeFromSuperview()self.HUD = nil})}//自定义提示func showCustomDialog(){//初始化对话框,置于当前的View当中HUD = MBProgressHUD(view: self.view)self.view.addSubview(HUD!)//如果设置此属性,则当前view置于后台HUD?.dimBackground = true//设置对话框文字HUD?.labelText = "操作成功"//设置模式为自定义HUD?.mode = MBProgressHUDMode.CustomViewHUD?.customView = UIImageView(image: UIImage(named: "37x-Checkmark-1"))HUD?.showAnimated(true, whileExecutingBlock: {sleep(2)}, completionBlock: {self.HUD?.removeFromSuperview()self.HUD = nil})}//纯文本提示func showAllTextDialog(){//初始化对话框,置于当前的View当中HUD = MBProgressHUD(view: self.view)self.view.addSubview(HUD!)//如果设置此属性,则当前view置于后台HUD?.dimBackground = true//设置模式为纯文本提示HUD?.mode = MBProgressHUDMode.Text//设置对话框文字HUD?.labelText = "操作成功"//指定距离中心点的X轴和Y轴的偏移量,如果不指定则在屏幕中间显示// HUD?.yOffset = 150.0// HUD?.xOffset = 150.0HUD?.showAnimated(true, whileExecutingBlock: {sleep(2)}, completionBlock: {self.HUD?.removeFromSuperview()self.HUD = nil})}override func didReceiveMemoryWarning() {super.didReceiveMemoryWarning()// Dispose of any resources that can be recreated.}}

以下是运行的效果:

文本提示框:

进度提示框1:

进度提示框2:

自定义提示框:

纯文本提示框:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。