5つの単一のグループ化されたセルを持つUITableViewがあり、ユーザーは各オプションから特定の追加画面にアクセスできます。その後、ユーザーはこの画面に戻り、最後に選択したセルにチェックマークを付けて、以前のチェックマークをオフにできるようにします。
私はこれを達成しようとしてdidSelectRowAtIndexPath:
いますが、正しく理解できないようです。
動的セルにはいくつかの答えがありますが、静的セルには何もありません。誰かがこれを手伝ってくれるでしょうか。
5つの単一のグループ化されたセルを持つUITableViewがあり、ユーザーは各オプションから特定の追加画面にアクセスできます。その後、ユーザーはこの画面に戻り、最後に選択したセルにチェックマークを付けて、以前のチェックマークをオフにできるようにします。
私はこれを達成しようとしてdidSelectRowAtIndexPath:
いますが、正しく理解できないようです。
動的セルにはいくつかの答えがありますが、静的セルには何もありません。誰かがこれを手伝ってくれるでしょうか。
これを管理する方法はいくつかありますが、簡単な方法の1つは、セルへの参照をコレクションに格納して、すべてのセルにメッセージを簡単に送信できるようにすることです。たとえば、次のようなプロパティを追加できます。
@property(strong、nonatomic)IBOutletCollection(NSArray)* cells;
@property (strong, nonatomic) IBOutletCollection(UITableViewCell) NSArray *cells;
それをnibファイルまたはストーリーボードの各セルに接続します。(Interface Builderを使用していない場合は、を削除してIBOutletCollection
、セルを作成する場所に自分で配列を入力します。)
次に、次のように選択を管理できます。
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
for (UITableViewCell *currCell in self.cells)
{
currCell.accessoryType = UITableViewCellAccessoryNone;
}
UITableViewCell *selectedCell = [tableView cellForRowAtIndexPath:indexPath];
selectedCell.accessoryType = UITableViewCellAccessoryCheckmark;
}
IBOutletCollection の正しい構文は次のとおりです。
@property (strong, nonatomic) IBOutletCollection(UITableview) NSArray *cells;