在我的應用程序中,我試圖刪除所有現有子視圖並添加一個在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