arrays - 如何在 Swift 中从数组设置多个 UILabel?

标签 arrays swift tags uilabel

我想做的是获取今天的工作日。从中我得到剩下的 6 个工作日,我将它们放入一个数组,然后尝试使用这个数组来更新 7 个 UILabel。从今天开始的工作日的简短列表。我的 UILabel 在引用 socket 集合中,我已将它们的标签设置为 0 到 6。

我已经尝试了多个不同的版本(最初没有任何数组)并设法在 Playground 上工作,直到我在数组中有工作日但在实际项目中,当我尝试更新时标签,它成功构建但随后崩溃。

编辑:成功构建后崩溃。线程 1 中的错误:断点 1.1。显然停在 super.viewDidLoad() 行。

Edit2:按照建议进行了更改。构建成功,然后以与第一次编辑相同的方式崩溃。

感谢任何帮助。

import UIKit

class ViewController: UIViewController {
    @IBOutlet var label: [UILabel]!

    var rollingDay = NSDate()
    var array: [String]  = []

    func addDays() {
        var calendar = NSCalendar.currentCalendar()
        var formatter = NSDateFormatter()
        var stringRolling = formatter.stringFromDate(rollingDay)

        for var x = 0; x<7; x++ {
            calendar = NSCalendar.currentCalendar()
            formatter = NSDateFormatter()
            formatter.dateFormat = "EEEE"
            stringRolling = formatter.stringFromDate(rollingDay)
            array.append(stringRolling)
            rollingDay = calendar.dateByAddingUnit(.CalendarUnitDay, value: 1, toDate: rollingDay, options: nil)!
        }
    }
func updateLabels() {
    for (index, day) in enumerate(array) {
        let label : UILabel = self.view.viewWithTag(index) as! UILabel
        label.text = day as String
    }
}

override func viewDidLoad() {
    super.viewDidLoad()

    addDays()
    updateLabels()

        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

最佳答案

由于您已经使用array 来保留所有的工作日,现在您只需枚举数组来设置标签,如下所示:

for (index, day) in enumerate(array) {

    let label : UILabel = self.view.viewWithTag(index) as! UILabel
    label.text = day as String
}

关于arrays - 如何在 Swift 中从数组设置多个 UILabel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32611606/

相关文章:

PHP 简单维基解析器需要 NOWIKI 标签

java - 如何排序忽略大写的数组?

arrays - 如何在 C 中将 float 组写入文件?

javascript - 比较 2 个数组 - 一个包含字符串,另一个包含数字。重复字符串的个数之和

ios - 将 Swift 添加到项目中会显着增加大小。如何以及何时可以避免

javascript - 链接标签调用js函数不起作用

javascript - 我无法在 JavaScript 中使用 console.log 显示对象数组

ios - UILabel 从垂直中心开始

ios - 实现从 SwiftUI 到 UIViews 的填充

xml - 类似sgml-tag 的功能,用于带DocBook 标签的nXml 模式