0

実行時に5つのセルが動的に追加されたTableViewControllerがあります。セルの初期値(cell.detailtext.text)は、すべてのセルで同じデフォルト値です。viewDidLoad が終了し、これが完了したら: (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath, 特定の条件に基づいて、実行時にセルの値を更新する必要があります。後でセルの値を更新するにはどうすればよいですか?

要するに、IOSの関数に以下のアルゴを実装する必要があります

tableViewの各セル

cell.detailtext.text = @"新しい値"

また

関数() {

cell = インデックスのセル (関数に渡される)

cell.detailtext.text = @"新しい値"(関数に渡される)

}

4

3 に答える 3

2

UITableView の dataSource を更新するたびに、呼び出す必要がありますreloadData

しかし、それはテーブル全体を更新し、2 つの問題があります。

1)大きなテーブルがあり、単一の値を変更するだけで大​​きなオーバーヘッドが発生する場合

2) 更新 (追加または削除) をアニメーション化している場合、大量のデータでデバイスに遅れが生じる可能性があります

クラス リファレンスを確認してください: http://developer.apple.com/library/ios/#documentation/uikit/reference/UITableView_Class/Reference/Reference.html

または、個々のセルを更新するだけの場合は、呼び出してみてください

reloadRowsAtIndexPaths:withRowAnimation:

パフォーマンスに関してははるかに優れていますが、大量のデータを追加する場合は適用できないなど、いくつかの制限があります。

より多くの状況と詳細に入ることができますが、それは範囲外になります.

于 2012-05-09T04:38:44.200 に答える
0

テーブルビューに配列値を指定して、データを変更する必要があります。そして、あなたは使用する必要があります

[tableView reloadData]

テーブルビューのデータを更新する方法

于 2012-05-09T04:31:01.473 に答える