작업을 거부하는보기의 단추가 있습니다. X-Code의 빈 기본보기 응용 프로그램에서 작업하고 있지만 어떤 응용 프로그램에서도 작동하지 않습니다. 대신 다음 오류가 표시됩니다. '- [UIViewController에 showVicInfo :] : *** 인식 할 수없는 선택기 예를 0x3c084f0로 전송' :'NSInvalidArgumentException'UIButton IBAction 오류
디버거 ISN
때문에, 이유 캐치되지 않는 예외 'NSInvalidArgumentException'응용 프로그램 종료 어떤 도움도. 나는 파일의 소유자에게 (다른 방법이 아니라) 버튼을 연결했는지 확인했다. 아래는 액션 코드입니다. 중단 점이 거기에 도달하지 않기 때문에 경고보기가 아니라는 것을 알고 있습니다.
about.m
about.h@interface about : UIViewController { } -(IBAction)showVicInfo:(id)sender;
-(IBAction)showVicInfo:(id)sender { UIAlertView *myAlert = [[UIAlertView alloc] initWithTitle:@"No Internet Connection" message:@"You require an internet connection via WiFi or cellular network for iFirelert to work." delegate:self cancelButtonTitle:@"OK, thanks" otherButtonTitles:nil]; [myAlert show]; [myAlert release]; }
업데이트 : 참고로이 내가 도움이된다면, 버튼을 만드는 방법에 대해 갔다 방법이다.
- 만든 새 뷰
- 추가 (파일> 새 파일> UIViewControllerSubclass 인터페이스에 대한 XIB/w) - (IBAction를)은 showInfo (ID) 보낸 사람;
- 추가를 about.h하는
- - (IBAction를) showVicInfo (ID) 보낸 사람 { UIAlertView * myAlert [[UIAlertView ALLOC] initWithTitle = "인터넷에 연결"메시지 @ "@ 당신은 필요 WiFi를 통한 인터넷 연결 또는 iFirelert 용 셀룰러 네트워크 작동. " 위임 : 자기 cancelButton 제목 : @ "OK, thanks" otherButton 제목 : nil]; [myAlert show]; [myAlert release]; } about.m하는
About.xib 인터페이스 빌더에 문을 연,- 은 Ctrl 키를 클릭하여 파일의 소유자 속성에 버튼을하여 -showVicInfo 액션에있는 버튼을 엮은
보기 (안에 직사각형 버튼을 드래그- 다른 방법으로).
- 파일 소유자가 "about"클래스로 설정되어 있는지 확인했습니다.
그런 다음 X 코드에서 오류가 발생하여 빌드되고 실행됩니다.
업데이트 2 : 알았습니다. 기존 프로젝트의 설정이나 무언가 여야합니다. 다른 X 코드 프로젝트에서 작동하는 두 개의 클래스 파일과 XIB 파일을 복사했지만 단추 또한 기존 앱에 동일한 오류가 발생합니다.
어떻게 당신은'about' 인스턴스를 생성하는 공개하지 않는 경우
다 괜찮습니다? 대신 당신은 평범한 오래된'UIViewController 대신 초기화 '하는 것처럼 들립니다. 또한, 이것은 클래스에 대한 끔찍한 이름입니다. 최소한 클래스 이름을 대문자로 만드십시오. 아마도'AboutController'가 좋을 것입니다. –
인터페이스 빌더에서 about.xib로로드 할 NIB를 설정했으며 이름을 바꿀 것입니다. 작동하지 않을지를 확인하는 테스트 클래스 일뿐입니다. – Graeme
about.xib의 ViewController 클래스는 무엇입니까? 그것은 네 번째 탭 (나는 제목, 신분을 잊지?)에있어,하지만 당신은 명령 4 키와 함께. 수업은 "약"이어야합니다. – progrmr