XCode: Я должен передать imageView, захваченный в secondView Диспетчере первому Диспетчеру

 (IBAction)captureButton:(id)sender {

    captureButton.hidden = YES;
    cancelButton.hidden = YES;

    currImage = [signatureViewController imageWithView:self.view];
    NSLog (@"image %@",currImage);
    imgView = [[UIImageView alloc]initWithFrame:CGRectMake(150,100,300,350)];
    imgView.backgroundColor = [UIColor blackColor];
    imgView.image = currImage;
    [self.view addSubview:imgView];
}

Capturing the imageView now need to pass this to signView in first Controller.

0
nl ja de
Это - мой Кодекс doneButton: нажатие на это должно поместить imageview, захваченный в первого Диспетчера - (IBAction) doneAction: (id) отправитель {[сам dismissViewControllerAnimated:YES completion:nil]; NSLog ("% текущего изображения", currImage); imgView.image = currImage;
добавлено автор ios54, источник

2 ответы

Можно передать изображение от одного диспетчера представления другому диспетчеру представления во многих отношениях, Из которого некоторые упоминаются ниже

  1. In the app delegate create one imageview object.Declare property & synthesize of it to access it in other classes. Now Create App delegate share instance & set the image view object of app delegate in captureButton method of second view controller. To access the same image again create shared instance of app delegate file in first view controller and use the app delegate image view property to get the image.

  2. Second way is by using the delegates methods

        //Declare delegate in second view controller
        @protocol SecondViewControllerDelegate
    
        -(void)setTheImage:(UIImage *)img
    
        @end
    
        //Declare property of delegate protocol
        @property (assign)id delegate;
    
        //synthesize the variable 
        @synthesize delegate;
    
    
        //Extend SecondViewControllerDelegate in first view controller by importing secondviewController in first view controller
        #import secondviewController.h
    
            @interface firstviewController : UIViewController
    

    // Now wherever you are creating object of SecondViewController set the delegate as follows lets say objSecondViewController is object of your view controller

    objSecondViewController.delegate=(id)self;
    
    //Now define delegate method of  SecondViewControllerDelegate
    
    -(void)setTheImage:(UIImage *)img
    {
    //here set the image img to your image view present in first view controller
    }
    //Now lastly in second view controller in captureButton function call the function
    
    [delegate captureButton:currImage];
    
  3. Third way is to use the global declaration of the first view controller & set the image view in the captureButton by declaring the property & synthesize of imageview of first view controller

0
добавлено
Большое спасибо... @vrushal
добавлено автор ios54, источник

Я сделал это использование дефолты NSUser.. В secondViewController:

-(IBAction)doneAction:(id)sender
{
    imgView.image = currImage;
    NSData *imageData = UIImagePNGRepresentation(currImage);
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    [defaults setObject:imageData forKey:@"imageDataKey"];
    NSLog (@"Data Saved");
}

и я назначил этот сохраненный образ на imageview в firstController в - (пустота) viewWillAppear: Метод

0
добавлено
Mobile Dev Jobs — вакансии и аналитика
Mobile Dev Jobs — вакансии и аналитика
6 187 участник(ов)

Публикуем вакансии и запросы на поиск работы по направлению iOS, Android, Xamarin и т.д. ВАЖНО: Правила публикации и правила канала: Ссылка – https://telegra.ph/Pravila-oformleniya-vakansij-i-rezyume-11-09-2

iOS Developers — русскоговорящее сообщество
iOS Developers — русскоговорящее сообщество
2 400 участник(ов)

Общаемся на темы, посвященным iOS-разработке, Swift, Objective-C, SDK, Rx, Cocoa и т.д.