2 bluetooth99 bluetooth99 于 2013.06.06 11:26 提问

链接UIView子类和ViewController

有一个UIView子类,想要在ViewController类创建的xib中显示。UIView类名为tag

// Tag.h

UIView *view;

// Tag.m 

if (self) {
    [[NSBundle mainBundle] loadNibNamed:@"ViewController" owner:self options:nil];
    [self addSubview:self.view];
}
return self;

好像没连上啊?我做的对不对?

1个回答

zhanglei5415
zhanglei5415   Rxr 2013.06.06 14:04
已采纳

重新帮你描述一下:
你是想将在xib上设置好的视图作为子视图添加到自定义类Tag上,是吧

首先要确定的是你这个名为viewcontroller.xib文件的所有者(file owner)是一个控制器(viewcontroller),还是NSObject.
如果是一个控制器的话,你需要这样来得到控制器的视图

// Tag.m 

if (self) {
    UIViewController *controller=[[UIViewController alloc] initWithNibNamed:@"viewcontroller"];
    [self addSubview:controller.view];
}
return self;

如果只是在xib上放了一个UIView 并没有设置它的所有者.你可以这样访问到这个视图
// Tag.m

if (self) {
    UIView *_view=(UIView *)[[[NSBundle mainBundle] loadNibNamed:@"ViewController" owner:self options:nil] objectAtIndex:0];
    [self addSubview:_view];
}
return self;
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!