저는 Evernote API를 사용하고 있으며 코드를 가능한 한 추상화 된 상태로 유지하기 위해 Evernote API 관련 메서드가 포함 된 도우미 클래스를 만들었습니다.이 뷰 컨트롤러 의존 메서드를 도우미 클래스로 옮기려면 어떻게해야합니까?
그러나 오류가 발생하면 alertView뿐만 아니라 로그인 폼을 표시하기 위해보기 컨트롤러에서 호출해야하는 한 가지 방법이 있습니다. 여기에 코드입니다 :
- (IBAction)loginToEvernote:(id)sender {
EvernoteSession *session = [EvernoteSession sharedSession];
[session authenticateWithViewController:self completionHandler:^(NSError *error) {
if (error || !session.isAuthenticated) {
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error"
message:@"Could not authenticate"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
} else {
}
}];
} 그것은 나에게 보인다
"authenticateWithViewController : completionHandler"방법은 로그인 정보가 들어있는 모달 뷰 컨트롤러를 보여주기 위해, 뷰 컨트롤러에 있어야합니다.
다시 말하지만, 이것은 API의 메소드이므로 변경할 수 없습니다.
어떻게이 방법을 도우미 클래스로 옮길 수 있습니까? 처음에는 위임이라고 생각했지만 이미 만들었습니다 이보기 컨트롤러는 도우미 클래스의 델리게이트로 다른 오류 메시지를 보내고 서로의 도우미 클래스와 뷰 컨트롤러 위임자를 코드 작성자로 보았습니다. 심지어 가능하다면. 에버 노트 API는 뷰 컨트롤러를 필요로하고, 당신이 완전한 추상화를 원하는 경우
는