【问题标题】:Remove UITableViewCell Edit Mode Indentation?删除 UITableViewCell 编辑模式缩进?
【发布时间】:2012-03-29 21:54:33
【问题描述】:

我有一个分组的 UITableView,当进入编辑模式时,单元格缩进。进入编辑模式时,我需要停止单元格缩进。

我尝试了两件事:

cell.shouldIndentWhileEditing = NO;

-(BOOL)tableView:(UITableView *)tableView shouldIndentWhileEditingRowAtIndexPath:(NSIndexPath *)indexPath
{
    return NO;
}

进入编辑模式时这些停止单元格缩进都不会。

【问题讨论】:

  • 那么你想要发生什么?您希望“删除”标志出现在哪里?或者我可能误解了这个问题......:/
  • 我格式化文本和事物的方式意味着没有缩进仍然有任何删除图标的空间。相当简单,通常在编辑时,单元格会滑入,它们会缩进。我想按编辑,所以我仍然看到删除图标,但没有缩进单元格。
  • 有趣...您介意粘贴您的新代码吗?很好奇。

标签: iphone objective-c uitableview


【解决方案1】:

按照文档建议的方式做,引用[UITableViewCell willTransitionToState:]

UITableViewCell 的子类可以实现此方法,以在单元格状态更改时对单元格的其他更改进行动画处理。每当单元格在状态之间转换时,UITableViewCell 都会调用此方法,例如从正常状态(默认)到编辑模式。自定义单元格可以设置和定位以新状态出现的任何新视图。 然后单元格会收到一个 layoutSubviews 消息 (UIView),在该消息中,它可以将这些新视图定位到新状态的最终位置。重写此方法时,子类必须始终调用 super。

也就是说,你可以改变[UITableViewCell layoutSubviews[UITableViewCell contentView]的位置和大小,来取消缩进。

【讨论】:

  • 当我更改分组表中的 contentView 框架时,单元格的内容移动了,但单元格周围的边框保持不变,所以看起来不正确。
【解决方案2】:

我猜你要找的是这个:

  • (BOOL)tableView:(UITableView*)tableView shouldIndentWhileEditingRowAtIndexPath:(NSIndexPath*)indexPath { 返回否; }

注意:也许这在最佳答案时不可用,但因为今天是要走的路,所以供将来参考。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-12
    • 2014-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-18
    • 1970-01-01
    • 2011-11-14
    相关资源
    最近更新 更多