UITableView编辑模式删除按钮填充权限

时间:2012-05-15 18:35:04

标签: objective-c ios uitableview editmode

我想在UITableView 编辑模式删除按钮和单元格左侧之间留出一些空格(见下面的截图)。
有什么想法吗?

http://mixdesign.kz/mix/editmode.png

3 个答案:

答案 0 :(得分: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;
    }
}

答案 1 :(得分:1)

你可以实现

- (void)willTransitionToState:(UITableViewCellStateMask)state
在您的UITableViewCell子类中

稍微移动子视图以获得更大的填充。

答案 2 :(得分:1)

@property(非原子)NSInteger indentationLevel是一个定义din UITableViewCell documentation的属性。使用此选项可以设置tableview Cell的缩进级别。从- (void)willTransitionToState:(UITableViewCellStateMask)state

设置此属性