3

在我的应用程序中,我试图让我的 AVPlayerView 在鼠标空闲时隐藏标题栏。

截图:http: //i.stack.imgur.com/rMcrv.png

基本上我想要与视频控件相同的效果,如果没有鼠标活动,它会自动消失。

截图:http: //i.stack.imgur.com/TtTtb.png

这是我现在所拥有的:

override func viewDidAppear() {
    super.viewDidAppear()
    self.view.window?.titleVisibility = NSWindowTitleVisibility.Hidden;
    self.view.window?.titlebarAppearsTransparent = false
    self.view.window?.styleMask = NSTitledWindowMask | NSFullSizeContentViewWindowMask | NSClosableWindowMask | NSMiniaturizableWindowMask | NSResizableWindowMask
}

有小费吗?谢谢!

4

1 回答 1

5

我可能会设置一个NSTimer来确定标题栏消失多长时间。每次mouseMoved:调用时,这都会失效并重置。一旦它被调用,那么我知道让NSWindow标题栏淡出的唯一方法是通过循环或使用按钮的超级视图来获取标题栏视图(当然它以后总是可以改变):

[[[[self.window standardWindowButton:NSWindowCloseButton] superview] animator] setAlphaValue:0];

标题栏按钮仍然有效,因此您必须在动画完成时NSAnimationContext将其分组。setHidden:

于 2016-06-26T05:23:02.210 回答