在另一个自定义UIView中嵌入自定义UITableViewCell?

时间:2017-08-24 03:38:29

标签: ios swift uitableview uiview

我有一个dostuff_5,其中包含自定义UITableViewController列表。单元格有文本,有时很长。我在表中的两行截断。

当用户触摸单元格时,我想创建一个UITableViewCells作为弹出框,其中包含与UIView完全相同的信息,并在UITableViewCell内容上方添加标题。所以,基本上,我想要以下内容: enter image description here

我已经按照图片中所示构建了UITableViewCell,其中“Custom Header”文本实际上是UILabel。我已经从XIB文件中实例化了视图并成功设置了UILabel文本,但是自定义VersePopupView没有显示,即使我已经分配了该值。我的UITableViewCell都与IB挂钩。

这是我的实例:

IBOutlet

这是我的VersePopupView类:

        let popupView: VersePopupView = VersePopupView.instanceFromNib()
        popupView.frame = CGRect(x: 10, y: 100, width: 300, height: 100)
        popupView.assignVerseTableViewCell(cell: cell)

        window.addSubview(popupView)
        window.makeKeyAndVisible()

我做错了,UITableViewCell没有出现?

是否有更好的模式而不是嵌入UITableViewCell?

我不想复制代码(我以前做过),因为我希望用户与弹出窗口进行交互,就像在表格单元格中一样。

1 个答案:

答案 0 :(得分:2)

我不知道如何在不试图滥用表格查看单元格的情况下说服你这么做是多么容易,所以这是一个屏幕截图:

enter image description here

当我说这是一个三行表后跟一个完全独立的普通视图从表格视图单元格内部(通过加载单元格笔尖)时,你只需要相信我。

他们不仅看起来相同,而且行为相同;视图是一个自定义的UIView子类,它带有一个来自交换机的动作方法,当我单击该开关时,它会触发该动作方法,无论是在表格内还是在视图之外的视图中。

视图完全是在笔尖中设计的,绝对没有重复的代码。

这似乎是你想要做的事情。所以,我鼓励你,不要滥用表格查看单元格;用普通的观点来做到这一点,这种观点可以在一个细胞内或外面幸福地生活。