0

すべてのセルの横にチェックマークを付けて、クリックするだけでチェックマークを外すにはどうすればよいでしょUIToolBarButtonうか? これは可能ですか?

テーブルビューに読み込まれているセルの数を反復しようとしましたが、accessorytype をすべてのチェックマークに設定し、すべてのチェックがオンになったときに none に戻す方法がわかりません。

4

2 に答える 2

2

セルを直接変更しないでください。セルに入力するために使用されるデータを変更してから、テーブルにそのデータをリロードするように指示してください。

したがって、次のものが必要になります。

  • セルが表すデータの「チェックされた状態」を格納する方法。

  • -tableView:cellForRowAtIndexPath:問題のセルが表すアイテムの「チェック状態」の値に従って、メソッド内の単一のセルのアクセサリを設定する方法

通常の UITableViewCell の場合、次のように言ってアクセサリを設定できます。

cell.accessoryType = item.isChecked ? UITableViewAccessoryCheckmark : UITableViewAccessoryNone;
于 2011-11-06T23:28:10.890 に答える
0

これを試して:

    for(UITableViewCell* cell in tableAlert.tableView.visibleCells){
        cell.accessoryType = UITableViewCellAccessoryChecked;
    }

また、セルをスクロールしたときに cellForRow に正しいアクセサリが表示されるように、データ セットを更新する必要があります。

于 2013-02-02T06:26:33.490 に答える