2011-12-30 14 views
0

NSArrayの最初のオブジェクトはどれですか?もともと私はそれが0だと思ったが、私は間違っているかもしれない。NSArray/UITableViewの最初のオブジェクトへのアクセス

また、どの番号がUITableViewの最初のセルですか?私は最初のindexpath.rowが1だと思ったが、私も間違っているかもしれない?

誰かが私に指摘できるリンクはありますか?Appleがこれを説明していますか?

ありがとうございます!

-(BOOL) textFieldShouldReturn:(UITextField *)thetextField { 

    CustomCell *cell = (CustomCell*)[thetextField superview]; 
    NSIndexPath *indexPath = [thetableView indexPathForCell:cell]; 
    NSLog(@"%i", indexPath.row); 

答えて

2

インデックス0は、NSArrayの最初の要素を表します。

UITableViewでは、インデックスパスに行番号とセクション番号の両方があります。したがって、最初のセクションの最初の要素は、indexPath.row = 0indexPath.section = 0の場合です。

+0

私は上に追加したコードをチェックして、UITableFieldを持つカスタムセルをロードしたUITableViewを持っていますが、上記のようにテキストフィールドのインデックスパスを取得しようとすると、常に0になります。何か案は? –

1

いずれの配列でも、最初のオブジェクトはです。 tableViewの場合、配列は基本的に配列され、最初のオブジェクトはindexPath.row == 0で、最初の行を示します。

したがって、両方の答え= 0!

1

にObjCがUITableViewの第一の目的についてはC.

の一種である、それはあなたのデータソースに依存する第一の目的は、0でなければなりません。アプリケーションにセクションのみがある場合、データソースは通常NSArrayです。次に、データソースに対応する最初のセルが0のインデックスを持っている(私たちは通常 -[NSIndexPath row]てインデックスを取得。

あなたはいくつかのセクションを持っている場合は、データソースは通常NSArrayNSArrayである。そして、最初のセルがデータソースに対応あなたはこれでセルを取得することを想定されているデータソースの最初のNSArrayの最初のオブジェクトがある

あなたはUITableViewプログラミングガイドをお読みください

+0

私が上記で追加したコードをチェックすると、UITextFieldを持つカスタムセルをロードしたUITableViewがありますが、上記のようにテキストフィールドのインデックスパスを取得しようとすると、常に0になります!何か案は? –

1

:。。

CustomCell *cell = (CustomCell*)[thetextField superview]; 

この仮定は正しいですか?

+0

はい、それは私が仮定しているものです –

+0

そしてそれは正しいですか? – Peres

+0

私はそれが動作しないと考えていないと推測しています:p –

関連する問題