【问题标题】:set text of label with array gives error "Cast from '[String]' to unrelated 'String' always fails用数组设置标签文本给出错误“从'[String]'转换为不相关的'String'总是失败
【发布时间】:2015-12-02 17:27:15
【问题描述】:

我通过 segue 传入一个数组,效果很好。然后我想用数组设置标签的文本,但是即使打印命令显示数组,结果屏幕也会出现空白。这是代码。

class MessageViewController: UIViewController, UIViewControllerTransitioningDelegate {


var passArrayForSegue = [String]()


@IBOutlet weak var arrayforSegue: UILabel!


override func viewDidLoad() {


    print(passArrayForSegue)

    arrayforSegue.text = passArrayForSegue as? String

}

【问题讨论】:

    标签: ios arrays swift uilabel


    【解决方案1】:

    您正在尝试设置arrayforSegue 的文本,即UILabel.text 属性的类型为String,而passArrayForSegue 的类型为Array<String>(您使用了另一种声明数组的方法[String])。设置.text 属性的一种简单方法是遍历数组的对象并将它们附加到字符串中。

    更新

    你可以在this post中看到如何将你的数组连接成一个字符串

    【讨论】:

      【解决方案2】:

      当它需要一个字符串时,您不能直接将标签文本设置为数组。如果要将文本设置为数组的内容,则需要遍历它并从数组中获取字符串。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-02-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-02
        相关资源
        最近更新 更多