かなり単純なTableViewControllerは、収集時にチェックできる項目をリストしています。私は各セルに単語ラップラベルを実装し、各行が適切な高さになるようにheightForRowAtIndexPathを更新しました。これはうまくいきます:複数行のcontentViewを使用している場合のaccessoryViewの整列
注:私はテスト目的のためにセルのcontentViewに華やかな背景色を設定しました。私は各セルのaccessoryViewとしてチェックマークボタンを追加しようとする
問題が来る:
UIImage *image = [UIImage imageNamed:@"checked.png"];
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
CGRect frame = CGRectMake(0.0, 0.0, 44.0, 44.0);
button.frame = frame;
[button setImage:image forState:UIControlStateNormal]
button.backgroundColor = [UIColor redColor];
cell.accessoryView = button;
何らかの理由で、アライメントがよりまたがる私の細胞のために非常に適切ではありませんボタンのサイズが約26×26ピクセルを超えると、1つのラインよりも大きくなります。
上記の例では、ボタンの幅として44x44を使用します。
誰でもここで何が起こっているのか説明できますか? contentViewが2行対1行の場合、異なるアラインメントが存在するのはなぜですか?事実、テキストが使用する余分な行ごとに整列がますますオフになります。行テキストのコードを追加すれば役立ちます。
追加情報 - 私は、幅ではなく問題を引き起こすのがフレームの高さであると判断しました。 44×26に設定しても大丈夫です。 26歳以上で、それは整列していない。 –
ボタンの 'autoresizingMask'をそれに応じて設定しようとしましたか? –