如何将FBProfilePictureView转换为UIImage?

Ane*_*sic 16 uiimage facebook-graph-api ios facebook-ios-sdk

使用FBProfilePictureView一切正常,但我需要从FBProfilePictureView获取该图片并将其转换为UIImage.

我该怎么办?

我试过用这个:

UIGraphicsBeginImageContext(self.profilePictureView.frame.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
self.TestPictureOutlet.image = viewImage;
Run Code Online (Sandbox Code Playgroud)

但这对我的解决方案不起作用.

bus*_*117 17

FBProfilePictureView是一个UIView,这个UIView包含一个UIImageView,即你的图像,你可以从那个UIImageView获取UIImage:

profilePictureView是一个FBProfilePictureView

UIImage *image = nil;

for (NSObject *obj in [profilePictureView subviews]) {
    if ([obj isMemberOfClass:[UIImageView class]]) {
        UIImageView *objImg = (UIImageView *)obj;
        image = objImg.image;
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

编辑:更快地添加另一种方式,但做同样的事情

__block UIImage *image = nil;

[self.view.subviews enumerateObjectsUsingBlock:^(NSObject *obj, NSUInteger idx, BOOL *stop) {
    if ([obj isMemberOfClass:[UIImageView class]]) {
        UIImageView *objImg = (UIImageView *)obj;
        image = objImg.image;
        *stop = YES;
    }
}];
Run Code Online (Sandbox Code Playgroud)

  • 这返回nil (2认同)
  • 是的...返回零.这对任何人都有效吗? (2认同)