如何将NSTextFields添加到NSScrollView

时间:2017-03-30 23:13:14

标签: swift macos cocoa nsscrollview

我想动态地将多个NSTextField添加到NSScrollView

代码:

func addLabel(data: String)
{
    let offset = labelCount*20
    let label = NSTextField(frame: NSMakeRect(0, CGFloat(offset), 200, 20))
    label.stringValue = data
    scrollView.documentView?.addSubview(label)
    labelCount += 1

    // scrollView is IBOutlet
    // labelCount is var to keep record of number of labels
}

问题:

它将NSTextField正确地添加到NSScrollView,但只有在可见部分可用时才会添加它们。在NSScrollView的可见部分已满后,不再添加NSTextField个。

即使可见部分已满,我也需要添加NSTextField s并滚动查找其他部分。

我该怎么办?

1 个答案:

答案 0 :(得分:1)

类似于以下内容。

scrollView.documentView?.setFrameSize(CGSize(width: CGFloat(labelCount) * 200, height: 20))