나는 이것을 실행 해요 : 내 registrationcontroller.m에서실행 코드 내 appDelegate.m에서
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
NSLog(@"url recieved: %@", url);
NSLog(@"query string: %@", [url query]);
NSLog(@"host: %@", [url host]);
NSLog(@"url path: %@", [url path]);
NSDictionary *dict = [self parseQueryString:[url query]];
NSLog(@"query dict: %@", dict);
if([[url host] isEqual: @"success"]){
RegistrationController *rc = [RegistrationController alloc];
[rc regSuccess];
}
else if([[url host] isEqual: @"fail"]){
RegistrationController *rc = [RegistrationController alloc];
[rc regFailed];
}
return YES;
}
내가 가진이
-(void)regSuccess{
NSLog(@"REGSUCCESS!!!:D");
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
WaitController *rc = [storyboard instantiateViewControllerWithIdentifier:@"waitcontroller"];
[self.navigationController pushViewController:rc animated:NO];
}
-(void)regFailed{
NSLog(@"REGFAILED!!!:(");
[UIView animateWithDuration:1.0 animations:^{
_wheel.alpha = 0.0;
}];
}
내 URL 방식에 연결 내 휴대 전화에서 응용 프로그램으로 리디렉션되고 콘솔에서 REGSUCCESS !!! : D를 출력하므로 registrationcontroller.m 내부의 메서드가 호출되었음을 알 수 있습니다. 내가 가지고있는 문제는 대기 컨트롤러가 푸시되지 않았거나 regSuccess 메서드 내에서 개체의 다른 조작이 작동하고 있다는 것입니다. . 행운 :(와 시간이에 대한 수정을 찾아왔다 제발 도와주세요
참고 :. 를 내가 이미 regSuccess을 구현
감사
rc를 초기화하지 않는 이유가 있습니까? – JeffRegan
regSuccess 메서드에 일부 중단 점을 추가하십시오. 그들을 공격 할 때 스토리 보드 포인터가 유효하고 rc 포인터가 유효한지 확인하고 마지막으로 self.navigationController가 네비게이션 컨트롤러의 인스턴스를 가리키고 있는지 확인하십시오. 네비게이션 컨트롤러를 어디에서 인스턴스화하는지는 알 수 없으므로 놓친 부분에 대한 첫 번째 추측이됩니다. – isaac
어디서나 내 내비게이션 컨트롤러를 인스턴스화하지 않습니다 ... 스토리 보드에 하나를 추가하고 초기보기 컨트롤러에 연결했습니다. 그들 중 하나라도 오류가 없습니다. rc를 초기화했지만 출력에 아무런 영향을 미치지 않았습니다. self.navigationController가 네비게이션 컨트롤러의 인스턴스를 가리키고 있는지 확인하는 방법을 모릅니다. 내가 잘못 본 것이 아니라면, self.navigationController를 사용하여 뷰가 navigationController에 푸시되었는지 확인하고,있는 경우 반환합니다. 입력 한대로, 탐색 컨트롤러 (faceslap). –