【问题标题】:How to insert button into Table view cell Swift如何将按钮插入表格视图单元格Swift
【发布时间】:2015-09-11 21:30:57
【问题描述】:

如何在表格视图单元格的每个单元格上添加按钮,以便它知道来自哪个单元格。

示例:

数据有 2 个产品,即产品 A 和产品 B,然后我将它们存储在数组中,即 [产品]。在数组内部,有它们的详细信息,即名称和价格。所以,我已经成功地将这些变成了表格视图。 问题是如何在表格视图单元格中插入按钮?

示例:

当按下按钮时,它知道按下了哪一行,当按下第二行时将是产品B。 我是这里的新手。需要帮助,谢谢。

【问题讨论】:

    标签: swift


    【解决方案1】:

    你有两个选择:

    选项一 - 简单、快速、糟糕:

    创建UIButton 的实例,并将框架定位到您实际希望放置按钮的位置。添加tag 属性以及操作。每个按钮的操作都是相同的,您可以使用该标签来执行不同的操作。

    选项二:

    创建 UITableViewCell 的子类。在那里添加你想要的所有元素。为按钮创建操作,您可以设置目标UITableViewCellUITableViewController。如果您选择UITableViewCell 作为目标,则必须实现委托,在UITableViewController 中面对该委托并在那里实现该委托功能。如果您选择控制器作为目标,则必须将其发送到单元格。您还必须设置标签。

    我会使用选项二,因为它是可扩展的、易于维护的,并且您可以看到单元格。添加更多组件也更容易。

    【讨论】:

      【解决方案2】:

      我不认为您需要在UITableViewCell 中放置按钮或任何其他控件来识别选定的单元格。

      您需要做的就是在您已经实现UITableView的类中实现以下委托方法

      tableView(_:willSelectRowAtIndexPath:)
      tableView(_:didSelectRowAtIndexPath:)
      

      这些方法会让你知道选中的UITableViewCellindexPath,你可以做你想做的选择。

      注意:不要忘记将您的 UIViewController 设置为 delegateUITableView(几乎就像您在 DataSource 的情况下所做的一样)。

      这是您可以参考的Github repo,但代码状态不佳。

      【讨论】:

        猜你喜欢
        • 2020-02-04
        • 2018-09-22
        • 2016-07-10
        • 1970-01-01
        • 2021-03-22
        • 2015-09-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多