2009-08-21 5 views
4

현재 인터페이스에서 버튼을 인터페이스 빌더의 뷰로 드래그하여 객체에서 동작 메소드를 호출 중입니다. 그런 다음 객체를 패널로 드래그하고 액션 메소드로 객체를 지정합니다. 내 단추를 개체로 드래그하고 내 동작 방법을 선택합니다. 이것은 내 메서드를 호출에서 작동합니다.코코아에서 인터페이스 빌더를 사용하지 않고 uibutton을 호출하는 메소드

현재 nib가 파생 된 uiview 클래스의 인터페이스 빌더없이 액션 메소드를 대신 호출하고 싶습니다.

아무도 내가 이것을 수행 할 수있는 방법을 알고 있습니까? 액션 방법을 다음과 같이 정의되어있는 경우

답변

10

첫 번째 대답에서 Jasarien과 다른 질문을 읽습니다.

클릭에 응답하는 버튼을 얻으려고하지만 IB를 사용하지 않고 선택한 목표 방법을 설정하려면 다음과 같이됩니다.

[myButton addTarget:self action:@selector(myMethod:) forControlEvents:UIControlEventTouchUpInside]; 
7

:

- (IBAction)myMethod:(id)sender; 

(발신자 매개 변수가 완전히 선택 사항입니다), 당신은 단지 IBAction를 단순히 인터페이스 빌더를 할 수 있도록 정의 된 매크로입니다

[self myMethod:self]; 

를 호출 할 수 있습니다 Interface Builder에서 사용할 수있는 메소드를 선택하십시오. 사전 처리 후에 무효화되기 때문에 런타임에 메소드 서명이 다음과 같이됩니다.

다른 방법과 마찬가지로.

관련 문제