很奇怪的是,在其他一些iOS应用程序中,我创建了一个单 View 应用程序,然后添加了MainView.h
和MainView.m
,它们是UIView
,但是在另一个程序中,我没有添加这样的类,但可以立即执行:
ShapeView *sv;
sv = [[ShapeView alloc] initWithFrame:CGRectMake(10, 170, 140, 140)];
[self.view addSubview:sv];
ViewController.m
内部。当然,ShapeView.m
必须实现 drawRect
才能正确绘制形状。但是为什么我们这次不需要先添加 MainView.h
和 MainView.m
并仍然在一些主视图上绘制呢?
最佳答案
您不必为任何应用添加 MainView.h
和 .m
。仅当您想要将自己的自定义 UIView
命名为“MainView”时,才有必要这样做。如果您不需要自己绘制 View 或 View 的一部分, View Controller + XIB/NIB 效果很好。
应用程序中的主UIViewController
(如您所提到的,从单 View 应用程序模板创建)创建一个从默认NIB/XIB加载的默认UIView
。加载 View 后,它可以在 UIViewController
代码中作为 self.view
使用。
事实上,与 ShapeView
相比,MainView
并没有什么特别的。它们都是自定义的 UIView
子类。
关于iphone - 在iOS应用程序中,即使没有添加主自定义UIView,我仍然可以添加其他 View 对象作为 subview ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10328940/