无法在UIView中绘制UImage :: drawRect
问题描述:
我知道这看起来像一个简单的任务,这就是为什么我不明白为什么我不能让图像呈现。无法在UIView中绘制UImage :: drawRect
当我建立了我的UIView,我做了以下内容:
myUiView.backgroundColor = [UIColor clearColor];
myUiView.opaque = NO;
我创建和我UIView的初始化函数保留的UIImage:
image = [[UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"test" ofType:@"png"]] retain];
然后我的drawRect看起来像这样:
- (void) drawRect:(CGRect) rect
{
[image drawInRect:self.bounds];
}
最终我会通过位图上下文来操纵UIImage,然后在drawRe ct从上下文中创建一个CGImage并渲染它,但现在我只是试图让它呈现一个已知的图像。
我一直在挖掘这个网站,以及文档。我沿着CG路径走,尝试着用CGContextDrawImage通过其他人发布的大量例子来绘制它,但那也没用。
所以我回到了似乎是最直接的方式来绘制图像,但它不起作用。
任何帮助将不胜感激。
在此先感谢。
答
首先,验证self.bounds
的大小和位置是你想要的。如果大小为{0,0},则不显示任何内容。请使用此功能:
NSLog(@"%@", NSStringFromCGRect(self.bounds));
同时确保图像不为零:
NSLog(@"%@", image);
您已经验证该图像是什么,你希望(不为零)和自我。边界是你期望的吗? – wbyoung 2010-06-05 17:28:44
神圣的废话...我不敢相信我忽略了一些如此基本的东西。不知道为什么图像是零...至少现在我知道问题是什么。谢谢!! – Joel 2010-06-05 17:55:34