次のように、すべてのテーブル ビュー セルにカスタム UIView を描画しています。
_checkboxView = [[[UIView alloc] initWithFrame:CGRectMake(cell.frame.size.width - 28.5, cell.frame.size.height - 33.5, 25, 25)] autorelease];
_checkboxView.backgroundColor = [UIColor clearColor];
_checkboxView.layer.borderWidth = 4.0f;
_checkboxView.layer.borderColor = [[UIColor blackColor] CGColor];
_checkboxView.layer.cornerRadius = 4.0f;
[cell addSubview:_checkboxView];
[cell bringSubviewToFront:_checkboxView];
これは完全に機能しますが、電話を横向きモードに切り替えると、チェックボックスが間違った場所にあり、テーブル ビュー セルの中央近くに表示されます。ポートレートモード用に作成した制約を使用して、セルの右側に固定する必要があります。当然、私はただメソッドに行きます:
-(void)viewWillLayoutSubviews
しかし、すべての UITableViewCell のビューを適切に固定できるようにするにはどうすればよいでしょうか? 全体がプログラムで構築されているため、インターフェイスビルダー (および自動レイアウト) を使用できません。このメソッドで見ている特定のセルのハンドルを取得するにはどうすればよいですか?