カスタムセルで作成された6行のtableViewがあります。
カスタム セルには、UILabel と UISwitch があります。メソッド「cellForRowAtIndexPath:」には、次のものがあります。
static NSString *CellIdentifier = @"optionsCell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
UISwitch *optionsSwitch = (UISwitch *)[cell viewWithTag:300];
UILabel *optionsLabel = (UILabel *) [cell viewWithTag:200];
NSLog(@"%@", optionsSwitch);
NSLog(@"%@", optionsLabel);
tableView が (ストーリーボードから) 最初にインスタンス化されると、2 つのオブジェクトが正しく取得されます (テーブル ビューの最初の行にのみ結果を追加しています)。
しかし、reloadData メソッドを tableView に送信すると (UISwitch のステータスはプログラムで変更できるため、表示する前に tableview を更新します)、UISwitch が nil のときに UILabel を正しく取得します。
UILabel が機能し、UISwitch が機能しないのはなぜですか?
この問題に関する別の投稿で示唆されているように、UISizeClasses は有効になっていません。
ありがとう、コラード