如何以编程方式执行故事板提供的此功能:通过在故事板中设置视图类,在-(void)viewDidLoad
期间,您可以直接获取所需自定义视图类的实例。是否有一些像-registerViewClass:
这样的API可以在初始化期间注册自定义视图类?
我这样做是通过替换-(void)viewDidLoad
中的原始UIView实例:
-(void)viewDidLoad{
self.view = [[CustomViewClass alloc] initWithFrame:(self.view.frame)];
}
它有效,但效率不高。
答案 0 :(得分:7)
在视图控制器的子类中,您应该覆盖loadView
并像这样分配自定义视图:
-(void)loadView
{
self.view = [[MYCustomView alloc] init];
}
这是交换视图控制器子类加载的视图类的首选方法。 viewDidLoad
仅应用于其他初始化视图。
答案 1 :(得分:1)
此代码可以在代码中创建自定义视图,并在使用[[UIScreen mainScreen] bounds]时将其全屏添加
-(void)viewDidLoad{
CustomViewClass customView = [[CustomViewClass alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.view = customView;
}