2012-07-27 2 views
1

대상으로 전화하지 않았다 : 나는 인스턴스 메소드와 클래스 헤더에 - (void)submitRegister;있는 UIButton는 방법에게 나는 다음과 같은 코드를 한

UIImage *registerImg = [UIImage imageNamed:@"register_button_normal"]; 
CGFloat registerOffsetX = (view.frame.size.width - registerImg.size.width)/2; 

UIButton *registerBtnTwo = [[UIButton alloc] init]; 
registerBtnTwo.frame = CGRectMake(registerOffsetX, 111, registerImg.size.width, registerImg.size.height); 

[registerBtnTwo setBackgroundImage:registerImg forState:UIControlStateNormal]; 
[registerBtnTwo addTarget:self action:@selector(submitRegister) forControlEvents:UIControlEventTouchUpInside]; 
[registerPanel addSubview:registerBtnTwo]; 
[registerBtnTwo release]; 

이를; 난 내 submitRegister 구현에 NSLog을 가지고 있기 때문에

문제는 이벤트가 발생하지 않는 것입니다

내가 무엇을 시도했다

:

1. UIButton *registerBtnTwo = [UIButton buttonWithType:UIButtonTypeCustom]; 

2. UIButton *registerBtnTwo = [[UIButton alloc] initWithFrame:frame]; 

편집 1 : 난 내있는 navigationController 현재 뷰 컨트롤러를 추가 누가 ?

if (row == kLoginRegisterIndex) { 
    login = [[LoginRegisterVC alloc] init]; 
    [self.navigationController pushViewController:login animated:YES]; 
} 

편집 2 :

UIView *registerPanel = [[UIView alloc] initWithFrame:frame]; 
registerPanel.backgroundColor = [UIColor colorWithPatternImage:image]; 

어떤 아이디어가? 메소드 서명은 submitRegister: (되지 submitRegister) 인

[registerBtnTwo addTarget:self action:@selector(submitRegister) forControlEvents:UIControlEventTouchUpInside]; 

[registerBtnTwo addTarget:self action:@selector(submitRegister:) forControlEvents:UIControlEventTouchUpInside]; 

+0

할당 코드를 보여주고 registerPanel을 초기화하십시오. 이 UIView 있습니까? – dasdom

답변

0

부모보기는 기본적으로 userInteractionEnabled = NO가있는 UIImageView였습니다.

1

변경하려고. 헤더에 메서드를 선언 할 필요가 없습니다.

이 경우 호스트보기의 프레임을 확인하는 데 도움이되지 않습니다. 버튼이 프레임 외부에 있으면 표시 될 수 있지만 닿지는 않습니다.

편집 내용을 이해하지 못합니다.

+0

1. 'submitRegister'메소드에 현재 버튼을 전달하려는 경우'[registerBtnTwo addTarget : self action : @selector (submitRegister for forControlEvents : UIControlEventTouchUpInside];)는 하나의 메소드를 호출하는 버튼이 여러 개있는 경우 유용합니다. ; 2. 포인트 1에도 불구하고 시도했지만 작동하지 않습니다. 나는 틀을 점검 할 것이다. – h4cky

+0

시도해 보셨습니까? – dasdom

+0

변경하려고했습니다 :) – h4cky