2011-05-21 3 views
2

こんにちは
私のビューは、ナビゲーションコントローラ内のテーブルビューです。私は他の人のコードを使ってこれを行いました。コードを書くときにこれが人の意図だったのを知っていますが、テーブルのセルに触れると同じビューになります。下のコードでは、それぞれ異なる表のセルに異なるペン先をロードする方法をどのように批判しますか?簡単なテーブルナビゲーションのヘルプ

MoreTableViewController.h

@interface MoreTableViewController : UITableViewController <UITableViewDelegate, UITableViewDataSource> { 
IBOutlet UITableView *moreTableView; 
NSMutableArray *moreArray; 
AboutDetailViewController *aboutDetailViewController; 

} 

@property (nonatomic, retain) NSMutableArray *moreArray; 
@property (nonatomic, retain) AboutDetailViewController *aboutDetailViewController; 
@end 

MoreTableViewController.m

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
NSInteger row = [indexPath row]; 
if (self.aboutDetailViewController == nil) { 
    AboutDetailViewController *aboutD = [[AboutDetailViewController alloc] initWithNibName:@"AboutDetailViewController" bundle:nil]; 
    self.aboutDetailViewController = aboutD; 
    [aboutD release]; 

} 
aboutDetailViewController.title = [NSString stringWithFormat:@"%@", [moreArray objectAtIndex:row]]; 

ROSS_APP_7AppDelegate *delegate = [[UIApplication sharedApplication] delegate]; 
[delegate.moreNavController pushViewController:aboutDetailViewController animated:YES]; 

}

私は、if文を実行する必要がありますか?もしそうなら、私はどのようにコードを書くだろう。私はここで得ることができるすべての援助が必要です。 ご協力いただきありがとうございます。

答えて

0
if(indexPath.row == 0) 
{ 
    AboutDetailViewController *aboutD = [[AboutDetailViewController alloc] initWithNibName:@"AboutDetailViewController" bundle:nil]; 
    self.aboutDetailViewController = aboutD; 
    [aboutD release]; 
} 
else if(indexPath.row == 1) 
{ 

} 
else if(indexPath.row == 2) 
{ 

} 

[OK]を....

そして、あなたが方法

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

以下に、これらすべてのことを記述する必要はありがとうございました!!! – Sam

1
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    NSInteger row = [indexPath row]; 
     switch(row) { 
      case 0: 
      // First row 
      // Push xib 
      break; 

      case 1: 
      // Second row 
      // Push xib 
      break; 
     } 
}