단추를 뷰에 프로그래밍 방식으로 추가하려고합니다. 다시 클릭 할 때까지 클릭 할 때 "밀어 넣기"상태를 유지하고 싶습니다. 내가 읽은 바로는 이것에 사용할 버튼이 NSPushOnPushOffButton
일 것 같습니다. 여기에 대한 애플의 discription입니다 :NSPushOnPushOffButton "밀어 넣기"하지 않음
첫 번째는 두 하이라이트를 클릭하고 버튼을 경계하는 경우 "에 을 밀어"이 버튼을 야기; 두 번째 클릭하면 정상적으로 상태로 돌아갑니다. 이 옵션은 인터페이스 빌더의 버튼 속성에서 "푸시 오프 푸시"라고합니다.
내 프로그램에서 작동하지 않아 SSCCE를 만들었습니다. 아래에서 설명하겠습니다. 내 문제는 버튼을 클릭했을 때 머무르지 않고 오히려 정상적인 버튼처럼 튀어 나오고 있다는 것입니다. 이 버튼이 어떻게 수행되는지에 대해 뭔가 빠졌는지, 아니면 단순히 잘못 구현했는지 (이 방법은 프로그래밍 방식으로 UI를 시도한 것은 이번이 처음) 확실하지 않지만 다른 버튼 유형은 NSToggleButton
으로 작동합니다. NSPushOnPushOffButton
에 대해 특별한 것이없는 한 내가 잘못 된 곳을 보지 못합니다. 누군가가 더 나은 해결책을 제안 할 수 있거나 잘못 된 부분을 설명하면 좋을 것입니다. 감사!
#import "AppDelegate.h"
@implementation AppDelegate
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
NSRect buttonFrame = NSMakeRect(0,0,200,200);
NSButton *button = [[NSButton alloc]initWithFrame:buttonFrame];
[self.window.contentView addSubview:button];
[button setButtonType:NSPushOnPushOffButton];
}
@end
굉장합니다, 감사합니다! –
@MattCooper : 천만에요! –