在我的应用程序中,我试图删除所有现有子视图并添加一个在Interface Builder中创建的新子视图。但是,我似乎无法连接视图。连接问题IBOutlet
当点击一个按钮,下面的功能(的UIViewController的一个子类中)执行:
// Display a list of settings to choose from
- (void) settings
{
SettingsRootController *settingsController = [[SettingsRootController alloc] initWithNibName:@"SettingsRootController" bundle:nil];
_settingsController = settingsController;
for (UIView *view in self.view.subviews)
{
[view removeFromSuperview];
}
[self.view addSubview:_settingsController.view2];
int a = [self.view.subviews count];
[self.view setNeedsDisplay];
......
}
#import <UIKit/UIKit.h>
@interface SettingsRootController : UIViewController
{
IBOutlet UIView *_view2;
}
@property(nonatomic, retain) IBOutlet UIView *view2;
进入Interface Builder中,我创建了一个新的基于视图的厦门国际银行。将文件所有者设置为SettingsRootController。随机将UITextView拖放到xib中。连接UITextView以在SettingsRootController中查看和查看2。
然而,如果上面的行是:
[self.view addSubview:_settingsController.view2];
一个将总是0,因此,新的屏幕是空的。
但是,如果改变:
[self.view addSubview:_settingsController.view];
我能看到的UITextView。
你是什么意思?你的意思是_view2和view2?我把@synthesize view2 = _view2; – SmallChess 2011-01-26 10:48:09
接缝确定,我会写一个新的答案 – Felix 2011-01-26 10:54:55