将子视图添加到xib文件

我试图添加一个标签到UIView在xib文件中。 当我运行应用程序,标签不显示。

- (void)viewDidLoad { [super viewDidLoad]; self.label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, 200)]; [self.label setText:@"This is a label"]; xibView *myxibView = [[xibView alloc] init]; [myxibView.myView addSubview:self.label]; } 

1.如果你的控制器与你的xib具有相同的名字,比如XibViewController.m&XibViewController.xib。 您的控制器默认将其视图设置为XibViewController.xib的一个实例。

在这种情况下,您只需要将标签添加到self.view

 [self.view addSubview:self.label]; 

2.如果要将XibViewController.xib加载到不同的名称控制器(如View2Controller.m),则需要按名称加载xib,并将xib视图添加到View2Controller的视图。

 UIView *myxibView = [[[NSBundle mainBundle] loadNibNamed:@"XibViewController" owner:self options:nil] objectAtIndex:0]; [myxibView addSubview:self.label]; [self.view addSubview:myxibView]; 
 xibView *myxibView = [[xibView alloc] init]; [myxibView.myView addSubview:self.label]; 

您没有将myxibView添加到实际视图。 它只是一个例子。 你为什么不这样做:

  [self.view addSubview:self.label]; 

希望这可以帮助.. :)

只需添加,

 self.label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, 200)]; [self.label setText:@"This is a label"]; [self.view addSubview:self.label]; 

它会查看视图上的标签。