2012-02-07 5 views
0

프로그래밍 방식으로 UIbutton을 생성 할 때 다른 UIbuttons IBAction 메소드에서 UIbutton에 액세스 할 수 있습니까? 인터페이스 빌더를 사용하여 각각에 대해 IBOutlet을 생성하고이를 참조하는 방법으로이 작업을 수행 할 수 있었지만 프로그래밍 방식으로 단추를 만들어야하며 이것이 가능한지 알아낼 수 없었습니다.다른 버튼에서 하나의 버튼의 제목을 변경하십시오. IBAction

감사합니다.

답변

0

단추를 만들 때 컨트롤러의 ivars에 단추를 할당하십시오. 그런 다음 IBAction 메소드는 필요한 경우이 ivars에 액세스 할 수 있습니다.

예를 들어, 뷰 컨트롤러 헤더에 당신은 할 수 있습니다 구현에

@interface MyViewController : UIViewController 

@property (nonatomic, retain) UIButton *button1; 
@property (nonatomic, retain) UIButton *button2; 

@end 

을 당신이 당신의 버튼 같은 것을 만들 것입니다 : 당신의 IBAction를 방법 당신이 할 수있는 그런

UIButton *b = [[UIButton alloc] init...]; 
...more setup... 
self.button1 = b; 
[b release]; 

... 

을 다음과 같은 내용 :

-(IBAction)buttonPress:(UIButton *)b 
{ 
    if (b == self.button1) 
     // do something to button2 
    else 
     // do something to button1 
} 

의미가 있습니까? (이 코드는 모두 메모리에서 코드화되었으며 테스트되지 않았습니다.)

+0

대단히 감사합니다. – user1195485

관련 문제