繁体   English   中英

UIButton不会更改图像

[英]UIButton doesn't change the image

我有一个具有自定义样式和默认图像的UIButton。 当我按下它时,我会加载相机,而在拍摄照片时,我想更改UIButton中的图像,但是它不起作用。

我正在使用此代码:

- (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];

}

任何想法? 谢谢!

您是否检查过self.imageButton不为零?

您可能只是无法将self.imageButton插座绑定到笔尖中的按钮上(这很容易做到)。

或如Basics Bits所建议,视图(以及包括按钮的任何子视图)在显示图像选择器时可能已释放,因此您可能需要在尝试操作按钮图像之前强制重新加载视图。 如果是这种情况,请在设置图像以重新加载按钮之前调用此方法:

[自我看法];

这可能看起来像什么也没做,但是view属性是一个惰性构造函数,因此调用它会从笔尖中再次加载视图(如果已卸载)。

您的代码看起来正确,是否检查了UIImagePickerController打开时是否释放了imageButton?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM