将子视图添加到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];
它会查看视图上的标签。