0

我想在UITableView 编辑模式删除按钮和单元格左侧之间留出一些空间(见下面的截图)。
任何想法?(来源:mixdesign.kz


4

3 回答 3

2

设置 indentationLevel/indentationWidth 对我不起作用。

对我有用的是继承 UITableViewCell 和自定义-layoutSubviews

#define LEFT_EDITING_MARGIN 42

- (void)layoutSubviews
{
    [super layoutSubviews];

    if (self.editing && self.contentView.frame.origin.x != 0) {
        CGRect frame = self.contentView.frame;
        CGFloat diff = LEFT_EDITING_MARGIN - frame.origin.x;
        frame.origin.x = LEFT_EDITING_MARGIN;
        frame.size.width -= diff;
        self.contentView.frame = frame;
    }
}
于 2012-10-02T13:40:31.693 回答
1

你可以实现

- (void)willTransitionToState:(UITableViewCellStateMask)state

在您的 UITableViewCell 子类中稍微移动您的子视图以获得更大的填充。

于 2012-05-15T18:59:19.767 回答
1

@property(nonatomic) NSInteger indentationLevel 是一个在UITableViewCell 文档中定义的属性。使用它,您可以设置 tableview 单元格的缩进级别。从您的设置此属性- (void)willTransitionToState:(UITableViewCellStateMask)state

于 2012-05-15T19:00:59.870 回答