iphone - 在 UITableViewCell : cell gets squished 上滑动以删除

标签 iphone ios uitableview editing

我有一个以编程方式创建的自定义表格 View 单元格,它包括:一个带有图像的背景 View ,左侧和手边有 3 个标签,右侧有一个 UISwitch。我希望能够滑动并删除单元格。然而,这有效,当我滑动以调出删除按钮时,删除按钮将背景 View (以及其他所有内容)推过,就好像它正在挤压单元格一样。我如何才能使背景图像不缩小?

我四处搜索这个问题,有人说它与自动调整蒙版有关,但这似乎没有任何影响。我也不想在 layoutSubviews 方法中手动设置单元格的宽度,因为我看到了一个建议。

有什么想法吗? 谢谢!

最佳答案

问题,我猜(因为你没有发布任何代码)是你添加了所有这些 UI 元素作为单元格的 subview ,即 cell.backgroundColor = [UIColor someColor], [cell addSubview: label1], 等等

事情是这样的:单元格的 View 不知道如何在发生诸如编辑模式之类的事情时适本地调整自身大小。但是,单元格的 contentView(即 UIView)确实知道如何调整大小。因此,您需要将标签、开关等添加为 contentView 的 subview ,而不是单元格。这样做会在您进入编辑模式时适当调整所有内容的大小。

关于iphone - 在 UITableViewCell : cell gets squished 上滑动以删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9966956/

相关文章:

iPhone/iPad : How to get screen width programmatically?

ios - 从 google api 获取 EN、IT、FR、DE、ES 本地化城市名称

objective-c - 为什么我不能禁用ARC(每个文件)?

ios - 配置自定义 UITableViewCell 时如何传递参数

swift - 无论如何,表格 View 单元格都会保持突出显示

ios - 加载 MKMapView 时崩溃

ios - 通用 Swift 结构 : Segmentation fault: 11

ios - 我的 View Controller 被保留(我认为),但我找不到强有力的引用

iphone - 通知未在 IOS 设备之一中显示

iOS Objective-C : How to increase number of rows after given condition