0

我正在尝试创建一个 UIView,在其中添加 2 个 UIImageView 并从中创建一个 UIImage 。这是我使用的方法,但我得到一个空白的 UIImage。

这是我使用的代码:

-(UIImage*)getFinalImage{

    CGRect rect = CadreImage.frame;

    UIView *dynaView = [[UIView alloc] initWithFrame:rect];
    UIImageView *frontCadre = [[UIImageView alloc] initWithImage:TheImage];

    [dynaView addSubview:frontCadre];

    UIGraphicsBeginImageContextWithOptions(dynaView.bounds.size, dynaView.opaque, 0.0);
    [dynaView.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage * img = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return img;
}

任何帮助,将不胜感激。

谢谢。

4

1 回答 1

0

这是我用来抓取图层/屏幕截图的代码(注意这是针对整个屏幕而不是特定图层+处理视网膜显示):

if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
    UIGraphicsBeginImageContextWithOptions(self.view.window.bounds.size, NO, [UIScreen mainScreen].scale);
else
    UIGraphicsBeginImageContext(self.view.bounds.size);
[self.view.window.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

是否也可以设置断点,通过程序跳转来验证TheImage不为nil?

于 2012-07-17T16:50:12.520 回答