ios - 以编程方式在 UITableViewCell 底部添加 UIView

标签 ios swift uitableview uiimageview chat

我正在开发一个即时通讯应用程序。用户可以发送短信,为此我在自定义表格 View 单元格中使用了 UITextView。用户应该能够发送各种多媒体数据,例如图像、文档和视频。 enter image description here

在我的表格 View 单元格中,我在 stackView 中有一个 textView 和一个 UIImageView,我可以发送相应类型的数据。如果没有文本,我会隐藏 TextView。如果没有图像,我隐藏图像。

问题是:要扩展应用程序,我必须为文档添加一个新容器,为视频添加一个新容器,为音频文件添加另一个容器,并隐藏所有其他未添加数据的容器。这是一个垃圾解决方案,但它是我找到的唯一解决方案。

从后端知道发送的数据类型后,我如何以编程方式添加一个容器 View ,并在其中进行现场设置?我正在考虑使用默认的 textView 和一个空的 View,并在 cellForRowAt 中添加所需的元素。

最佳答案

我会尝试创建几个单元格,您可以通过检查条件在 cellForRowAt 中将其出队,例如:

    if userPost.images != nil {
                let cell = tableView.dequeueReusableCell(withReuseIdentifier: "Identifier1", for: indexPath) as! UITableViewCell
return cell
            } else {
                let cell = tableView.dequeueReusableCell(withReuseIdentifier: "Identifier2", for: indexPath) as! UITableViewCell
                return cell
            }

使用此解决方案,您可以创建一个单元格,该单元格非常适合一个用户发送给另一个用户的数据。只需检查您想要的任何条件并返回相应的单元格。

希望对您有所帮助!

关于ios - 以编程方式在 UITableViewCell 底部添加 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55262621/

相关文章:

ios - 根据自动布局更改UILabel中的字体大小(快速)

ios - 将音频文件保存到用户友好的位置 swift 3 avfoundation

iphone - 未找到 Apple Mach-O 链接器警告目录

ios - 使用自定义 tableview 滚动时 Tableview 图像变化

ios - UITableViewCell 约束直到我滚动 tableview 才更新

ios - SwiftUI ActionSheet 每个 Action 的不同颜色

ios - 隐藏快速从不同文件中删除 subview

swift - 图像在我第二次打开选项卡时出现(Swift)

ios - 在没有 IF 语句的情况下在滑动时显示和隐藏 UIView?

ios - 如何通过单击表格单元格中的按钮从表格单元格获取标签值?