나는 OSX의 systemStatusBar에 statusItem을 추가하기 위해 self.statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
을 사용합니다. 그러면 statusItem이 systemStatusBar의 맨 왼쪽 위치에 나타납니다. 특정 항목에 특정 항목을 추가하는 방법이 있는지 궁금합니다. 시스템 클럭의 왼쪽에?NSStatusBar의 특정 위치에 NSStatusItem을 추가 할 수 있습니까?
5
A
답변
0
아니요. Apple은 위치 선택 API를 제공하지 않습니다.
1
이 작업을 수행하는 개인 API가있다 : 당신이 그들을 가질 수있는만큼 멀리 오른쪽으로, 적어도 모든 방법을 오른쪽에있는 상태 항목을 배치 (또는 것
NSStatusItem *item = [NSStatusBar _statusItemWithLength:NSSquareStatusItemLength withPriority:INT32_MAX];
여전히 스포트라이트의 왼쪽에 있습니다.)
분명히 개인 API 인 경우 responseToSelector
if 문으로 포장해야합니다.
2
예 아니요. 비공개 API를 사용하면 NSStatusItem
을 추가하기 위해 priority
을 지정할 수 있습니다. 내가 NSStatusBar
에 대한 작은 범주를 개발 한 (NSStatusBar+MISSINGOrder) 마녀는이에 대한 간단한 방법을 제공합니다
NSStatusItem *statusItem =
[systemStatusBar statusItemWithLength:NSVariableStatusItemLength
positioned:NSStatusBarItemOrderingModeAfter
relativeTo:NSStatusBarItemPriorityNotificationCenter];
당신은 implementation details에 대한 내부 볼 수있다.
+0
이 내 프로젝트에서 작동하지 않는 이유는 무엇입니까? 10.12를 참조하십시오. – jimwan
http://edefinedvalue.com/2009/07/07/adding-custom-view-nsstatusitem –