2016-11-11 19 views
0

私はチュートリアルをオンラインで行っています。今はセルの表を作成していますが、質問があります。下の2番目の関数tableViewで... indexPathは正確に何ですか?UITableView - indexPathとは何ですか?

もっと重要なことは、関数が呼び出されるたびにindexPathを通って渡される値を更新することをプログラムがどのように知っていますか?

var rowNumber = 0 

func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    return 50 
} 

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    let rowCell = UITableViewCell(style: UITableViewCellStyle.default, reuseIdentifier: "Cell") 
    rowCell.textLabel?.text = String(indexPath.row + 1) 
    return rowCell 
} 
+0

'UITableView'のリファレンスドキュメントを読んだことがありますか? 'IndexPath'(' NSIndexPath')とは何かに関するセクションがあります。 'IndexPath'のドキュメントも参照してください。 – rmaddy

+0

はい私は文書を読んだり、そうでなければ尋ねなかったでしょう。しかし、ありがとう。 – user7024499

答えて

4

TableViewはセクションに分割されています。各セクションにはいくつかの行が含まれています。 IndexPathには、関数が要求している行の情報が格納されています。この数値に基づいて、指定された行のデータを表示するようにセルを構成します。アプリケーションは、行を表示する必要があるときにこの関数を実行しています。たとえば、テーブルビューを下にスクロールすると、次のセルが画面に表示されます。たとえば、正しいテキストでこのセルを設定するには、この位置(セクションと行)にある行に何を表示するかを尋ねるメッセージが表示されます。

また、パフォーマンスを向上させるには、Cellのinitの代わりにtableView.dequeueReusableCellWithIdentifier関数を使用してセルを作成する必要があります。

関連する問題