【问题标题】:Add UISwitch to subtitle style of tableviewCell将 UISwitch 添加到 tableviewCell 的字幕样式
【发布时间】:2019-08-21 22:53:32
【问题描述】:

我想使用表格视图单元格的字幕样式(不是自定义的),并且我需要在单元格的右侧有一个UISwitch。 如果单元格的名称是TitleCell 我知道我可以使用这行代码以编程方式向它添加 UISwitch:

TitleCell.accessoryView = UISwitch()

但是我可以访问此UISwitch 并将其用作出口并执行操作吗?

提前感谢您的帮助

【问题讨论】:

    标签: ios uitableview uiswitch


    【解决方案1】:

    您可以通过调用 addTarget 以编程方式为开关提供操作(请参阅 UISwitch: Swift 3: Programmatically )。

    还可以考虑移动到自定义单元 xib/类。设置起来并不难,但是您可以完全控制那里的内容以及布局方式。

    【讨论】:

    • 感谢您的帮助。我通常使用自定义样式,但由于我在设置页面上工作并且所有单元格都必须有图标,带有图像的字幕样式非常适合我的工作,我不需要担心图像的大小和约束。我查看了您发布的网站,但他们使用正常的添加到子视图,但是我使用的添加方法并没有让我有任何东西可以访问其中的 UIswitch,至少我不知道如何
    • 你是说有accessoriesView的时候addTarget不行吗?
    • 另请注意,如果您执行 addTarget ,您将 UISwitch 作为选择器的“发送者”参数。您可以在 UISwitch (mySwitch.tag = rowIndex) 中分配一个标签,并能够通过操作回调中的索引找到单元格。
    【解决方案2】:

    将开关分配给附件视图后,您可以使用

    if let mySwitch = TitleCell.accessoryView as? UISwitch {
       // it's the switch, you can use it.
    }
    

    但是,我们鼓励您通过子类化UITableViewCell

    来设计带有插座的自定义单元

    并且请遵守变量名以小写字母开头的命名约定。

    【讨论】:

      猜你喜欢
      • 2018-03-24
      • 2011-03-13
      • 2013-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-04
      相关资源
      最近更新 更多