2012-12-26 1 views
0

저는 Action Sheet Picket을 사용하고 있습니다. readme, picker에서 설명한대로 .h 및 .m 파일을 추가했으며 cancelAction도 제대로 작동하지만 successActionNSInvalidArgumentException에 "unrecognized selector to sent instance"라는 메시지를 던집니다.ActionSheet 인스턴스를 인식 할 수없는 선택기를 던졌습니다

응용 프로그램은 Navigation Controller과 함께 탭 표시 줄 응용 프로그램의 일종입니다. 루트로 TabBarController이 있으며 이 있고 TabBarController 아래에 있으며 ViewController 중 하나는 탐색 컨트롤러입니다. 하지만 Navigation Controller에서이 오류가 발생하지 않습니다. 이로 인해 오류가 발생하는지 확실하지 않습니다. 내가 사용하는 방법은 다음과 같습니다

:

- (IBAction)filterResult:(id)sender { 
    [ActionSheetStringPicker showPickerWithTitle:@"Pick Filter" rows:self.filterList initialSelection: self.selectedIndexes target:self successAction:@selector(animalWasSelected:element:) cancelAction:nil origin: self]; 
} 


- (void)animalWasSelected:(NSNumber *)selectedIndex element:(id)element { 
    self.selectedIndexes = [selectedIndex intValue]; 
    NSLog(@"Selected"); 
} 

예 그게 다야. 나는 이미 ActionSheetPicker.h 파일을 포함 시켰고 나는 피커가 잘 작동한다고 말했다.

[MYYViewController successAction:]: unrecognized selector sent to instance 0x9032400 
2012-12-24 12:14:45.488 Example[54268:11303] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[MYYViewController successAction:]: unrecognized selector sent to instance 0x9032400' 

어떤 도움이 좋을 것 :

마지막으로 여기에 오류가 발생합니다.

+0

동작 시트 추가 코드 추가 –

+0

작업 시트 코드가 더 이상 작성되지 않아 샘플 앱을 확인하고 추가했습니다. 그리고 나는 피커가 잘 작동하고 있다고 말했기 때문에 나는 원하는대로 목록을 만들었다. –

답변

2

피커가 응답하는지 여부를 확인하지 않고 직접 호출하므로 을 MYYViewController 클래스에 구현해야합니다.

+0

고맙습니다.하지만 그게 잘못이라고 생각합니다. 왜냐하면'successAction :'은'ActionSheetStringPicker.h' 파일에 이미 구현되어 있기 때문입니다. 왜 내가 다시 구현하지? 심지어 내가 그 기능에서 무엇을 쓸 것이라고 명확히 할 수 있습니까? –

+0

편집 된 게시물 확인 – Ismael

+0

@NewbieiOSDeveloper 메서드는 헤더 파일에 구현되지 않았으며 선언되었습니다. *** 파일을 .m 파일에 *** 구현해야합니다. 헤더에는 실제 코드가 없으며 컴파일러에 대한 힌트 만 있습니다. –