我有一个“加载...”覆盖UIView子类,在我的应用程序的各个地方使用。视图看起来总是一样的,并且一次不应该使用多个视图。这似乎是使用单身人士的好地方。为简单起见,我想只使用类方法showOverlay
和hideOverlay
,以便使用它的每个类都不必管理它的实例。它到处都是重复的代码。
我的直觉告诉我这是一个坏主意,但我不确定为什么会这样。它被认为是一种不好的做法吗?这是一个简单的观点,不应占用太多内存。
答案 0 :(得分:6)
不要为UIView
使用单身人士。
在非常UIViewController
中创建加载屏幕的最佳方法是创建一个超级UIViewController
,如“ViewController”。
在那里,您可以创建一个公开showOverlay
和hideOverlay
方法。
然后您需要从UIViewControllers
ViewController
进行子类化
@interface ViewController
- (void)showOverlay;
- (void)hideOverlay;
@end
@interface MainViewController : ViewController
@end
在您的实现中实现showOverlay和hideOverlay。
然后,您可以从MainViewController
答案 1 :(得分:3)
我强烈建议您使用MBProgressHUD。
MBProgressHUD是一个iOS插件类,在后台线程中完成工作时显示带有指示符和/或标签的半透明HUD。 HUD可以替代未记录的私人UIKit UIProgressHUD,并具有一些附加功能。