2013-10-18 5 views
1

기본적으로 사용자 정의 imagePickerController 클래스 인 GKClass 라이브러리를 사용하고 있습니다. 데이터를 전달하는 데 문제가 있습니다. 이미지를 다음 컨트롤보기로 보내고, 간단한 imagePickerController로 작업하고 있지만 현재 작동하지 않는 경우 ViewController가 데이터를 가져 오지 않습니다.이미지를 대상으로 전달하지 않습니다. ViewController

-(void)imagePicker:(GKImagePicker *)imagePicker pickedImage:(UIImage *)image 
{ 
    VCImageEditingViewController *ieVC = [[VCImageEditingViewController alloc]init]; 
    ieVC.selectedIMG = image; 
    [self.imagePicker.imagePickerController dismissViewControllerAnimated:NO completion:nil]; 
    [self performSegueWithIdentifier:@"imgrdy" sender:self]; 
} 

및 VCImageEditingViewController.m는 :

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    if (self.selectedIMG == nil) { 
     NSLog(@"no img set"); 
    } 
    self.imageDisplayed.image = self.selectedIMG; 
} 

나는 viewDidAppear도 그것을 시도하고 여전히 아무것도에서 "선택기는"IV 이후 시도 작동하지 않습니다 :

-(void)imagePicker:(GKImagePicker *)imagePicker pickedImage:(UIImage *)image 
{ 
    [self.imagePicker.imagePickerController dismissViewControllerAnimated:NO completion:nil]; 
    self.lastImageView.image = image; 
} 

그것은 이미지를 보여 주었다 현재보기 컨트롤러에서.

내 생각에 이미지가 수정되기 전에 대상 viewController가 제공됩니다.

도움이 필요하십니까? 고맙습니다.

답변

2

-(void)imagePicker:(GKImagePicker *)imagePicker pickedImage:(UIImage *)image 
{ 

[self.imagePicker.imagePickerController dismissViewControllerAnimated:NO completion:nil]; 

    //pass image with peroformsegue 
    [self performSegueWithIdentifier:@"imgrdy" sender: image]; 
} 

// In prepare segue method assign image to destination view controller 

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
if ([[segue identifier] isEqualToString:@"imgrdy"]) 
{ 
     VCImageEditingViewController *ieVC=segue.destinationViewController; 
     ieVC.selectedIMG =(UIImage *) sender; 
} 
} 
+0

당신을 감사하십시오. 공장. 그래도 왜 그런지 설명해 주시겠습니까? – Yevgeni

+0

storyboard 런타임은 현재 표시 컨트롤러의 prepareForSegue : sender : 메서드를 호출하여 필요한 모든 데이터를 표시 할보기 컨트롤러로 전달할 수 있도록합니다. – Kalpesh

관련 문제