2013-03-21 212 views
1

P.S:请不要建议我使用应用程序委托方式,因为我会在应用程序视图中使用它。感谢名单。导航控制器不显示视图

我尝试使用UINavigationController来显示UITableView,如settings应用程序。所以我试图一步一步地开始。到目前为止,我尝试在导航堆栈中显示包含在视图控制器中的视图。但是我错过了某个地方。

这里是我的相关代码:

.h file:

@interface ViewController : UINavigationController{ 



    UINavigationController *navigationController; 
    UIViewController *viewController; 
} 



@property(nonatomic, strong)IBOutlet UINavigationController *navigationController; 
@property(nonatomic, strong)IBOutlet UIViewController *viewController; 
@end 

.m文件:

@implementation ViewController 
@synthesize navigationController; 
@synthesize viewController; 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    //Do any additional setup after loading the view, typically from a nib. 

    self.viewController = [[UIViewController alloc]init]; 

    self.navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController]; 


    [self.navigationController.view addSubview:self.viewController.view]; 


} 

**The xib file:** 

enter image description here

当我运行该应用程序时,我期待看到蓝色视图,但我所看到的只是默认的蓝色导航栏,甚至没有“Root View Controller”标题消息。

+0

你为什么想到“根视图控制器”现身?你没有在任何地方使用该XIB(我可以看到)。 – 2013-03-21 00:58:48

+0

你缺少的是对故事板如何工作的理解。你的第一步应该是阅读“用于iOS的视图控制器编程指南”。 – rdelmar 2013-03-21 04:05:44

回答

1

如果从IB连接UI,试图删除这些行(删除ALLOC,INIT)

// self.viewController = [[UIViewController alloc]init]; 
// self.navigationController = [[UINavigationController alloc] initWithRootViewController:self.viewController]; 
// [self.navigationController.view addSubview:self.viewController.view]; 
相关问题