我知道这似乎是一个简单的任务,这就是为什么我不明白为什么我不能让图像渲染。
当我设置我的UIView时,我会执行以下操作:
myUiView.backgroundColor = [UIColor clearColor];
myUiView.opaque = NO;
我在UIView的init函数中创建并保留UIImage:
image = [[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"test" ofType:@"png"]] retain];
然后我的drawRect看起来像这样:
- (void) drawRect:(CGRect) rect
{
[image drawInRect:self.bounds];
}
最终我将通过位图上下文操作UIImage,然后在drawRect中创建一个CGImage,从而渲染它,但是现在我只是想让它渲染一个已知的图像。
我一直在浏览这个网站,以及文档。我已经沿着CG路径走下去,尝试使用CGContextDrawImage绘制它,跟随其他人发布的众多示例,但这也没有用。
所以我回到了最简单的绘制图像的方式,但它没有用。
非常感谢任何帮助。
提前致谢。
答案 0 :(得分:4)
首先,验证self.bounds
的大小和位置是否符合您的要求。如果大小为{0,0},则不会显示任何内容。使用此功能检查:
NSLog(@"%@", NSStringFromCGRect(self.bounds));
同时确保图像不是零:
NSLog(@"%@", image);