问题描述
- 从ViewController返回View
-
有一个函数返回显示的View,在使用下面的代码时候能看见View:UIViewController* vcontroller= [storyboard instantiateViewControllerWithIdentifier:@"meterEnlarge"]; return vcontroller.view;
但是如果用下面的代码时:
ViewController_Meter_Enlarge_iPad* controller = [[ViewController_Meter_Enlarge_iPad alloc]init]; return controller.view;
就不能看见view了,由于需要修改属性,所以需要实现第二种方法。
怎么样从VC返回view?
解决方案
ViewController_Meter_Enlarge_iPad 的init函数是否加载了xib里面的内容,或者自己addsubview了?如果没有,返回的view就是空白的。
你可以试一下将init里面的内容改为
[NSBundle loadNibNamed:@"xib名字" owner:self];
if(self){
}
return self;
有不懂的可以再提问。
解决方案二:
你不创建一个viewcontroller
,从NIB文件初始化它,这个view是无法设置的:
- (id)initWithNibName:(NSString *)nibName bundle:(NSBundle *)nibBundle
看一下链接给的说明。
解决方案三:
尽管xib已经与类绑定了,但并不是双向的,也就是说创建类的实例时如果步指定xib文件,view就是个空白的界面,什么都没有,所以在创建ViewController_Meter_Enlarge_iPad 对象时一定要指定xib 文件名
时间: 2024-10-03 21:40:56