2012-01-03 136 views
0

我开始在Xcode 4.2的单一视图模板(最近升级到4.2的Xcode和iOS5的)视图控制器

所以现在我只有一个视图控制器。

我在UIViewcontroller的子类中添加了一个新类。

现在在主控制器类viewDidLoad方法

- (void)viewDidLoad 
{ 

    // Override point for customization after application launch. 
    [super viewDidLoad]; 
    [self presentQuizcontroller]; 
} 
-(void) presentQuizcontroller 
{ 
    _QuizController = [[[Quiz alloc] initWithNibName:@"Quiz" bundle:nil] autorelease]; 
    _QuizController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
    [self presentModalViewController:_QuizController animated:YES];  // Do any additional setup after loading the view, typically from a nib. 

} 

问题是在我的测验类

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) { 
     // Custom initialization 
    } 
    return self; 
} 

的initWithNibName方法不会被调用(我检查用的断点),但它不” t通过if(self)的条件。因此视图不会出现。

任何想法?

编辑

第一个答案我想这太

- (void)viewDidLoad 
{ 

    // Override point for customization after application launch. 
     [super viewDidLoad]; 
} 
-(void) presentQuizcontroller 
{ 
    _QuizController = [[[Quiz alloc] initWithNibName:@"Quiz" bundle:nil] autorelease]; 
    _QuizController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
    [self presentModalViewController:_QuizController animated:YES];  // Do any additional setup after loading the view, typically from a nib. 

} 
-(void) awakeFromNib 
{ 
    [self presentQuizcontroller]; 

} 

同样的事情Quiz.m initwithnib名称方法后,如果(个体经营)不通过的情况。

回答

0

我想你需要使用awakefromnib。

这是另一个StackOverflow帖子的Link,如果您想了解更多信息。

0
  1. PresentModalViewController已折旧,我认为你现在应该使用presentViewController而不是它。

  2. 您确定“Quiz”是您的文件的名称吗?该字符串应该是一样的厦门国际银行文件的名称,即类似“QuizController”或“QuizViewController”

  3. 确保厦门国际银行文件是通过检查正确连接到页眉/执行文件:

    • 应该将xib文件的所有者设置为viewController

    • 如果应该将视图连接到viewControllers视图,则可以在xib文件上查看(如果有多个视图,则首先查看)。

相关问题