したがって、ビルダーを介して定義され、nib を介して読み込まれるカスタム テーブル セルがあり (そして、その idexPath のプロパティがあります)、2 つのボタンがあります。これらのボタンの状態が動的に変更されたテーブルを表示したい。IE 1 番目のセル - 両方が有効、2 番目のセル - 両方のボタンが無効、3 番目 - 1 番目の btn が有効、2 番目の btn が無効など。
ここで、1 つの再利用識別子を使用すると、すべてのセルが同じように見えますが、これは望ましくありません。すべてのセルに独自のビューが必要です。これは、すべてのセルに一意の再利用 ID を意味します。
しかし、どうやってこれに到達するのですか?一意の cellId を作成する場合
- (UITableViewCell *)tableView:(UITableView *)_tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
これは文字列になるので、オブジェクトの意味で同じ文字列を作成できませんでした。同じテキストで文字列を作成できましたが、これは別のオブジェクトになるため、reuseId を介してそのような cellId で以前に作成したセルを再度取得できませんでした。したがって、1つのセルのボタンの状態を変更して更新することはできません
[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:path] withRowAnimation:UITableViewRowAnimationNone];
しかし、意志だけが機能し[tableView reloadData];
ます。