如何解决UITableViewCell内部的UIButton在模拟器中不起作用iOS 14
将Xcode更新到版本12之后,每个添加到UITableViewCell的UIButton如下:
self.addSubview(someButton)
在模拟器(iOS版本14)中,按钮不起作用(当用户点击按钮时,什么也没有发生),但在实际设备中,一切正常。当我将UIButton这样添加到单元格中时,即使在模拟器中,一切也可以正常工作:
self.contentView.addSubview(receptionButton)
为什么会这样?我通过将UIButton(self.contentView.addSubview)添加到UITableViewCell来正确吗?
解决方法
我通过添加UIButton这样正确吗 (self.contentView.addSubview)到UITableViewCell?
是。
那是最正确的方法!您可以直接将子视图添加到self
(单元格本身)中,就像在您的第一个代码块BUT中一样,将来您将100%遇到错误(我做了),就像您现在刚刚经历的那样
为什么会这样?
这是我从Apple可以找到的最好的解释:
The content view of a UITableViewCell object is the default superview for content that the cell displays. If you want to customize cells by simply adding additional views,you should add them to the content view so they position appropriately as the cell transitions in to and out of editing mode.
https://developer.apple.com/documentation/uikit/uitableviewcell/1623229-contentview
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。