正如github文档页面所解释的那样,我刚刚下载了SVProgressHUD并将它合并到我的项目中,但即使我写出了[SVProgressHUD showWithMaskType:SVProgressHUDMaskTypeGradient];
,它也与默认的掩码类型没有什么不同,当我点击屏幕时,光标旋转时,我的应用程序就崩溃了--这意味着我的应用程序在显示所有的表视图单元之前崩溃了,所以无法禁用用户交互功能。
请注意,clear
或black
掩码类型也不起作用。
那么,我如何成功地禁用用户交互呢?AppDelegate.m
的applicationDidFinishWithLaunchingOptions:
和FirstViewController.
的viewDidLoad:
的哪个文件应该编写上面的代码?
我使用SVProgressHUD
的最新版本,并使用Xcode 5.1和iOS 7.1。我也用ARC。我是不是遗漏了什么?
更新
这是一个错误问题,并已在当前版本中得到解决。查看Github页面上的更多信息。
发布于 2014-03-14 16:27:02
你什么都没错过。iOS 7似乎不尊重掩码类型,因此用户交互永远不会被禁用。我认为这是SVProgressHUD的一个bug,而不是其他任何东西。真让人沮丧。
发布于 2016-04-06 10:33:53
这是非常晚的回答,但以防万一它可以帮助某人,因为我被这个问题困扰了一段时间。如果您正在使用github中的最新类,您将不会遇到任何问题,但是如果您使用的是旧类,那么从SVProgressHUD.m替换下面的方法如下所示
+ (void)showWithStatus:(NSString *)status
{
[self setDefaultMaskType:SVProgressHUDMaskTypeGradient];
[self showProgress:SVProgressHUDUndefinedProgress status:status];
}
发布于 2017-03-22 05:03:25
我使用的是SVProgressHUD
和iOS 10.2。只是设置掩码类型
In AppDelegate
SVProgressHUD.setDefaultMaskType(.black)
工作。
每次你写
SVProgressHUD.show()
它将显示掩码,userInteraction由它管理。
https://stackoverflow.com/questions/22396175
复制相似问题