填充和编辑NSView内容

时间:2016-04-09 16:06:35

标签: xcode swift macos

我试图通过填充NSView来构建一个列出信息的应用程序。

目前,我已经创建了一个包含我所有信息的数组Infos。 然后,我使用" for语句"展开每个Infos的mainView并创建一个字符串值等于:Infos[i]的Label。这样就可以正确显示每个信息。

这是我的代码:

    for i in 0 ..< Infos.count {

        expandTheMainView()


        var infoLabel: NSTextField!
        deviceBatteryPercentageView = NSTextField(frame: CGRect(x: 250, y: 40+CGFloat(newHeight)-CGFloat(height), width: 37, height: 17))
        infoLabel.stringValue = "\(Infos[i])%"
        infoLabel.editable = false
        infoLabel.bordered = false
        infoLabel.backgroundColor = NSColor(white: 0, alpha: 0)
        mainView.addSubview(infoLabel)

    }

但是我无法编辑它们,因为它们位于&#34; for语句&#34;,有没有办法来填充&#34;我有可能以编程方式编辑创建的信息吗?

非常感谢。

1 个答案:

答案 0 :(得分:0)

为重复循环中的每个文本字段分配一个标记,例如

infoLabel.tag = i + 100

然后您可以使用

引用文本字段
let thirdTextField = mainView.viewWithTag(102) as! NSTextField 

并更改值。