2015-07-19 50 views
-1

我的代码:如何正确添加Subview到NSSrollView?

@IBOutlet weak var scroller: NSScrollView! 

var showSettingsButton = NSButton(frame: NSMakeRect(0, 860, 60, 40)) 
    showSettingsButton.title = "Settings" 
    scroller.addSubview(showSettingsButton) 

的按钮看起来意在通过滚动视图保持静态的,但是当我滚动了滚动,按钮看起来就像这样:

enter image description here

我希望把无论滚动条是否滚动,此按钮始终位于左下角。 那么哪个视图应该是这个按钮的超级视图?

enter image description here

回答

0

应该在你的View。把它放在Scroll View - Text View下面,但要确保它是Scroll View - Text View的兄弟姐妹,而不是小孩。 如果你打算将其添加到代码中,添加它像

view.addSubview(showSettingsButton) 
+0

AFAICT,这不适合我的情况。 –

0

为了您的要求,您应该继承NSScrollView并重写“板砖”的方法。在那里你可以指定你的按钮框架

0

当你想让你的Button不滚动时,为什么你把它添加到滚动视图呢?

将它添加到view,超级查看scrollview。所以让它成为scrollview的兄弟姐妹。只需将第一个scrolliview和第二个button添加,以便button覆盖scrollview并显示在上面。

ViewController 
-> View 
    -> ScrollView 
     -> TextView (and anything that you want to scroll) 
    -> Button 

你可能想要做的这件编程,因为IB或故事板编辑器respectivey可以通过使按钮滚动视图的子视图再次更改视图层次结构。