以编程方式查找Dock的位置?

Mic*_*uth 5 macos cocoa dock objective-c

有没有办法在代码中找出Mac上的Dock是否位于用户显示器的底部,左侧或右侧?

Ven*_*MKO 6

NSScreenvisibleFrame方法,返回一个不包括Dock和菜单栏当前占用区域的矩形.您可以将此rect与全屏rect(- (NSRect) [NSScreen* frame])进行比较,并确定停靠位置.


Ale*_*ray 6

这可能更简单……

defaults read com.apple.dock "orientation"

底部

您还可以找出.. autohide(即1)、large size(即“65.48148”)和magnification(即1)等。

  • `NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; NSString *dockParameterYouWant = [[defaults persistentDomainForName:@"com.apple.dock"] valueForKey:@"thatParameterYouWant"];` (3认同)