Создать UIImage из другого контроллера представления - PullRequest
0 голосов
/ 14 октября 2010

Как создать UIImage в одном viewcontroller, когда действие, которое я хочу запустить, является кнопкой в ​​другом viewcontroller?

Итак, я хотел бы иметь кнопку в viewcontroller, которая принажал, отклонил это представление и создал UIImage в другом представлении.

Как это сделать?

Спасибо

Ответы [ 2 ]

1 голос
/ 14 октября 2010

Вы можете сохранить ссылку на VC с изображением в VC с удержанием кнопки.Переменная экземпляра (например, otherViewController) кажется подходящей.

В первом VC вы реализуете метод, который создает новый UIImage.

-(void)createNewImage {
    UIImage *image = [UIImage imageNamed:"image.png"];
}

Во втором VC вы создаете метод, который вызывается при нажатии кнопки.В этом методе вы получаете доступ к первому VC и вызываете только что написанный метод.

-(IBAction)newImageButtonTapped:(id)sender {
    [self.otherViewController createNewImage];
    [self dismissModalViewControllerAnimated:YES];
}
0 голосов
/ 14 октября 2010

Вам нужно быть более конкретным.Как вы показываете следующий вид контроллера?Вы инициируете его, а затем нажимаете на него?

Если вы находитесь в этом viewcontroller, у вас может быть свойство BOOL (BOOL makeImage;).Когда вы создаете представление для push, сделайте следующее:

TheNextViewController *page = [[TheNextViewController alloc] initWithNibName:nil bundle:nil];
[page setMakeImage:YES];
[self.navigationController pushViewController:page animated:YES];

, затем в viewDidLoad из TheNextViewController:

- (void)viewDidLoad{
  if(makeImage){
    // make you image here and add it to the view
  }
}

Возможно, вам придется установить другие переменные, например, NSString *imageName;и установите их при ...setMakeImage:YES], если вы хотите, чтобы кнопка показывала определенное изображение.

...