내가 지금 데 문제가 내가이 메서드를 호출하고있어호출 뷰 컨트롤러 문자열이
입니다 : - (무효) imagePickerController : (UIImagePickerController를 *) 선택 도구 didFinishPickingMediaWithInfo : (NSDictionary와 *) 정보 VC1
에서
나는 VC1에서 문자열 1을 가지고 있지만 그 이미지의 대리자 메서드가 다른 클래스에서 호출되기 때문에 그 방법
내에서 호출 할 수 없습니다 .
내가 NSLog (@ "% @", string1); null만을 나타냅니다
이미지 대리자 메서드 내부에서 string1을 검색하려고합니다.
누구든지 어떻게하는지 압니까? 감사합니다.
NSString *string1;
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
viewcontroller *v = [[viewcontroller alloc]init];
NSLog(@"string1 %@", v.string1);
}
EXC_BAD_ACCESS
을 콘솔에서 : I 선언
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
NSString *requestString = [[request URL] absoluteString];
NSLog(@"%@", requestString);
NSArray *components = [requestString componentsSeparatedByString:@":"];
for (int i=0; i< [components count]; i++) {
NSLog(@"components %@", [components objectAtIndex:i]);
}
if([components count] <= 1) {
return YES;
}
if ([(NSString *)[components objectAtIndex:0] isEqualToString:@"toapp"]) {
NSLog(@"toapp %@", [components objectAtIndex:0]);
// 1번째 문자열이 toApp인 경우
if([(NSString *)[components objectAtIndex:1] isEqualToString:@"showphoto"]) {
NSLog(@"showphoto %@", [components objectAtIndex:1]);
// 2번째 문자열이 relationButton인 경우
NSLog(@" objectAtIndex:2 %@", [components objectAtIndex:2]); // param2
pictureName = [components objectAtIndex:2];
//call photo library
picker = [[UIImagePickerController alloc] init];
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
picker.delegate = self;
picker.allowsEditing = NO;
[self presentModalViewController:picker animated:YES];
return NO;
}
}
return YES;
}
의 ViewController에서
: 여기
소스의 string1 (null)콘솔에서 helloworld 문자열을보고 싶습니다. imagePickerController 대리자 메서드 내에서 pictureName 문자열을 호출 할 수 없습니다. 대신 NSString
의 NSString*
을 필요로 %@
self.string1을 사용해 보셨나요? 그리고 디버그하여 자기 부분을 열면 Helloworld라는 문자열을 볼 수 있습니까? – CyberK
왜냐하면 delegate 메소드가 다른 클래스에서 호출 되었기 때문에 exec1이 string1에서 exec 액세스를 잘못했기 때문입니다. diff1 클래스에서 string1을 호출하는 방법을 알아야합니다. –
내 게시물을 어떻게 삭제합니까? 제가 실수를. –