2011-08-01 10 views
0

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[HomeViewController tableView:numberOfRowsInSection:]: unrecognized selector sent to instance 0x3944710NSInvalid例外

私は客観CでのtableViewを追加しようとしたとき、私は上記の例外を取得しています(私はコンソールでこれを見ることができる)とデバッガが終了しつつある、このエラーを解決するために私を助けてください。

@interface HomeViewController : UIViewController<CacheDBDelegate> 
{ 
IBOutlet UITableView *tvMainMenu; 
} 

@property (nonatomic,retain) UITableView *tvMainMenu; 

- (void)setRequiredData; }

@synthesize arrMainMenu; 
    @synthesize tvMainMenu; 

    - (void) setRequiredData 
    { 
    NSMutableArray *menuItems=[[NSMutableArray alloc] init]; 
    NSDictionary *row=nil; 

    row = [[NSDictionary alloc] initWithObjectsAndKeys: 
      @"ATM Inquiry", @"ATMINQ",nil]; 
    [menuItems addObject:row]; 


    [self.tvMainMenu selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]    animated:YES scrollPosition:UITableViewScrollPositionNone]; 



    if(row!=nil) 
    { 
     [row release]; 
    } 
    [menuItems release]; 

    } 
+0

tableViewにいくつかのチュートリアルのためにこれを確認するチェックし ? – Aravindhan

+1

呼び出しとメソッド宣言を表示できますか? – MByD

+0

私は上記の投稿を編集し、この問題を解決するためのコードsnippet.pleaseヘルプを追加しました。 – Shankaranarayana

答えて

0

あなたが適切テーブルビューのためにDataSourceを設定されていない場合、このエラーが発生し 。 ...テーブルビューに必要なUITableViewDelegateとあなたのHomeViewControllerUITableViewDataSourceメソッドを実装するために逃したにあなたが持っている

0

をDataSourceを確認してください。

は、ここですべてのUITableViewDelegate方法はオプションであり、UITableViewDataSourceは、2つの必須メソッドのtableViewあり:numberOfRowsInSection:のtableView:cellForRowAtIndexPath:あなたが実装する必要があります。

0

UITableViewデータソースを実装し、データを表示する必要があります。

[self.tvMainMenu selectRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0]    animated:YES scrollPosition:UITableViewScrollPositionNone]; 

このメソッドは、のtableViewのインスタンスメソッドであるとUITableViewは、テーブルビューのデータソースメソッドを必要とする持っています。

UITableViewこれらのメソッドを実装するために必要なデータソースメソッドがいくつかあります。あなたのコードを投稿することができ、これはlink

関連する問題