SwiftSwift学习程序员

iOS——MBProgressHUD设置背景方框为透明

2017-05-17  本文已影响484人  Bart_Simpson
如图
image.png

有时候会提需求说要透明等待框,这样加载时的等待不引人注意。
之前可以这样设置

let mb = MBProgressHUD.showAdded(to: self.view, animated: true)
mb?.backgroundColor = UIColor.clear
mb?.color = UIColor.clear
mb?.activityIndicatorColor = UIColor.blue
mb?.hide(true, afterDelay: 2.0)

这里将等待圈改为了蓝色,因为如果不设置默认是白色的,太不明显。

然后我就发现新的MBProgressHUD这样设置没用,找了半天终于找到方法

先设置hud.bezelView 的style 为MBProgressHUDBackgroundStyleSolidColor,然后再设置其背影色就可以了。因为他默认的style 是MBProgressHUDBackgroundStyleBlur,即不管背影色设置成什么颜色,都会被加上半透明的效果,所以要先改其style。 还是度娘出的回答,这里感谢 “晨曦梦永不弃”

然后新版本代码这样写就可以设置背景框为透明了 代码如下

self.view.backgroundColor = UIColor.white
let mb1 = MBProgressHUD.showAdded(to: self.view, animated: true)
mb1.bezelView.style = .solidColor
mb1.bezelView.backgroundColor = UIColor.clear
mb1.hide(animated: true, afterDelay: 2.0)

分享一下,万一以后自己忘了也有个记录。

转载请注明出处,谢谢。
上一篇下一篇

猜你喜欢

热点阅读