2010-04-13 89 views
0

一切都很好,我的導航控制器顯示的我的「菜單1」項目,但是當我點擊它似乎是一個問題與:iPhone Xcode - 第二個xib視圖上的導航控制器?

[self.navigationController pushViewController:C動畫:是];行它不連接到myClass文件中的斷點。所以我覺得我還沒有加入什麼?但不確定是什麼?

我的導航控制器的第二個視圖不能直接訪問AppDelegate,所以無法像我在某些教程中看到的那樣加入它。

[self presentModalViewController:mainViewController animated:YES]; 

我第二次查看 'MainViewController' 頭看起來像:

@interface MainViewController :UITableViewController <UITableViewDelegate, UITableViewDataSource> 
{ 
    NSArray *controllers; 
    UINavigationController *navController; 
} 

@property (nonatomic, retain) IBOutlet UINavigationController *navControllers; 

@property (nonatomic, retain) NSArray *controller; 

然後,我有我的MainViewController.m

@synthesize controllers; 
@synthesize navController; 

- (void) viewDidLoad 
{ 
    NSMutableArray *array = [[NSMutaleArray alloc] init]; 
    myClass *c = [[myClass alloc] initWithStyle:UITableViewStylePlain]; 
    c.Title = @"Menu 1"; 

    [array addObject:c]; 
    self.Controllers = array; 
    [array release]; 
} 
點擊呼叫時

第一視圖僅僅是一個按鈕

實施了numberOfRowsInSection和cellForRowAtIndexPath

- (void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath 
{ 

    NSUInteger row = [indexPath row]; 
    myClass *c = [self.controllers objectAtIndex:row]; 
    [self.navigationController pushViewController:c animated:YES]; // doesn't load myClass c 
    // [self.navController pushViewController:c animated:YES]; 
} 

而且在Interface Builder我拖着導航控制器到我的新XIB,改變了根視圖控制器類MainViewController也可以在連接文件所有者連接到導航控制器連接navController出口。

感謝您的時間。

+0

究竟是什麼問題?什麼「myClass文件中的斷點」? – 2010-04-13 15:34:29

+0

當我聲明一個數組並將其綁定回導航控制器時,myClass的 - (void)viewDidLoad的第一行。希望這可以幫助。 – Frames84 2010-04-13 15:47:07

+0

所以你在這裏粘貼的所有代碼都可以正常工作?問題是'MyClass'中的viewDidLoad方法(它似乎是'UITableViewController'的子類)永遠不會被調用?也許你應該發佈該類的代碼,如果問題在那裏。 – 2010-04-13 16:44:32

回答

0

myClass.h

#import "SecondLevelViewController.h" //This inherts UITableViewController 

@class myClass; 

@interface myClass : SecondLevelViewController 
{ 
NSArray *list; 
myClassDetail *detail; 
} 
@property (nonatomic, retain) NSArray *list; 

myClass.m

#import "myClass.h" 
#import "myClassDetail.h" 
#import "NavAppDelegate.h" 

@implementation myClass 
@systjesize list; 

- (void) viewDidLoad 
{ 
    NSArray *array = [[NSArray alloc] initWithObjects:@"test1",@"test2",nil]; 
self.list = array; 
.. .. .. 
//I can't get a break point at this point or in any of the other methods 
} 

所以沒有獲得一個破發點在這個頁面打告訴我,我已經錯過了sometihng。由於這是來自MainWindow.XIB的獨立XIB文件,因此我無法訪問App Delegate。

所以我真的需要知道如何將導航控制器連接到另一個視圖XIB文件,當我沒有在界面生成器中的應用程序委託。所有的教程都顯示導航控制器連接到這個應用程序委託。

該程序符合文件並運行,我得到列表中的第1個「菜單1」,但是當我嘗試使用新的myClass菜單項'test 1','test 2'填充相同的導航列表時 它不會觸發事件viewDidLoad。

相關問題