在iOS 13和Xcode 11中,tableview单元格的"setSelected"方法没有返回完整的单元格大小。这是因为在iOS 13中引入了新的样式系统,导致了一些变化。
在iOS 13之前,tableview单元格的选中状态可以通过设置单元格的selected属性来实现。在iOS 13中,为了支持新的样式系统,tableview单元格的选中状态发生了一些改变。
在iOS 13中,tableview单元格的选中状态由tableview的"didHighlightRowAt"和"didUnhighlightRowAt"方法来控制。当用户点击某个单元格时,tableview会调用"didHighlightRowAt"方法来通知单元格开始高亮,然后调用"didUnhighlightRowAt"方法来通知单元格取消高亮。
因此,如果想要获取完整的单元格大小,可以在"didUnhighlightRowAt"方法中进行操作。可以通过获取单元格的frame属性来获取完整的单元格大小。示例代码如下:
func tableView(_ tableView: UITableView, didUnhighlightRowAt indexPath: IndexPath) {
if let cell = tableView.cellForRow(at: indexPath) {
let cellSize = cell.frame.size
print("Cell Size: \(cellSize)")
}
}
这样,你就可以获取到完整的单元格大小了。
推荐的腾讯云相关产品:
以上是关于iOS 13和Xcode 11中tableview单元格"setSelected"方法返回完整的单元格大小的答案。如果有其他问题,请随时提问。
领取专属 10元无门槛券
手把手带您无忧上云