UIButton не меняет изображение - PullRequest
1 голос
/ 12 февраля 2012

У меня есть UIButton с пользовательским стилем и изображением по умолчанию.Когда я нажимаю на нее, я загружаю камеру, и когда фотография сделана, я хочу изменить изображение в кнопке UIB, но это не работает.

Я использую этот код:

- (void) imagePickerController: (UIImagePickerController *) picker
 didFinishPickingMediaWithInfo: (NSDictionary *) info {
    UIImage *originalImage, *imageToSave;
    originalImage = (UIImage *) [info objectForKey:
                                     UIImagePickerControllerOriginalImage];
    imageToSave = originalImage;

    dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0ul);
    dispatch_async(queue, ^{
        UIImageWriteToSavedPhotosAlbum (imageToSave, nil, nil , nil);
    });
    [self.imageButton setImage:originalImage forState:UIControlStateNormal];
    hasPhoto = YES;
    [self dismissModalViewControllerAnimated: YES];

}

Есть идеи?Спасибо!

Ответы [ 2 ]

1 голос
/ 12 февраля 2012

Вы проверили, что self.imageButton - это не ноль?

Возможно, вам просто не удалось привязать свое выходное отверстие self.imageButton к кнопке в вашем перо (это легко сделать).

Или, как предлагает «Bally Bits», вид (и любые подпредставления, в том числе и ваша кнопка), возможно, был освобожден при показе средства выбора изображений, поэтому вам может потребоваться принудительно перезапустить просмотр, прежде чем пытаться манипулировать изображением кнопки.В этом случае вызовите это перед настройкой изображения для повторной загрузки кнопки:

[self view];

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

0 голосов
/ 12 февраля 2012

Ваш код выглядит правильно, проверяли ли вы, запускается ли imageButton при открытом UIImagePickerController?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...