1

のフレームを設定しようとするUITableViewCell's AccssoryViewと、アクセサリ ビューの元のフレームは変更されませんが、UITableViewCellサブクラス化せずにデフォルトのアクセサリ ビューを再配置したいですか? それは可能ですか?

CGAffineTransformationsセルのミラーを作るのにうんざりしましたが、うまくいきませんでした。inUITableViewCellのフレームをサブクラス化して設定しても効果はありません。self.accessoryView.framelayoutSubviews

4

1 に答える 1

0

最初に UITableView Cell サブビューを取得しようとしましたが、次のcell.accessoryType = UITableViewCellAccessoryCheckmark;ようになりました:

<UITableViewCellContentView: 0x1463e500; frame = (0 0; 320 44); gestureRecognizers =      <NSArray: 0x1463e340>; layer = <CALayer: 0x1463e4d0>>,
<UIButton: 0x1463d920; frame = (0 0; 14 14); opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x1463ddd0>>

ボタンはUITableViewCellのaccessoryViewのようですが、原点は(0,0)なので、その後試してみます

for (UIView *view in cell.subviews) {
    if ([view isKindOfClass:[UIButton class]]) {
        view.frame = CGRectMake(20, 0, 14, 14);
    }
}

そして私は得た

<UIButton: 0x1463d920; frame = (20 0; 14 14); opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x1463ddd0>>

しかし、アクセサリの位置は変更されていません.. UITableViewCell がアクセサリビュー自体を rightPosition に配置することを意味すると思います。原点のアクセサリビューを再配置することはできませんUITableViewCell

これが私の研究です。誰かがそれを行う方法を見つけた場合、またはどういうわけか私がこれについて間違っている場合は、教えてください.

于 2013-12-16T08:48:15.640 に答える