2010-06-05 55 views
0

我知道這看起來像一個簡單的任務,這就是爲什麼我不明白爲什麼我不能讓圖像呈現。無法在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通過其他人發佈的大量例子來繪製它,但那也沒用。

所以我回到了似乎是最直接的方式來繪製圖像,但它不起作用。

任何幫助將不勝感激。

在此先感謝。

+0

您已經驗證該圖像是什麼,你希望(不爲零)和自我。邊界是你期望的嗎? – wbyoung 2010-06-05 17:28:44

+0

神聖的廢話...我不敢相信我忽略了一些如此基本的東西。不知道爲什麼圖像是零...至少現在我知道問題是什麼。謝謝!! – Joel 2010-06-05 17:55:34

回答

4

首先,驗證self.bounds的大小和位置是你想要的。如果大小爲{0,0},則不顯示任何內容。請使用此功能:

NSLog(@"%@", NSStringFromCGRect(self.bounds));

同時確保圖像不爲零:

NSLog(@"%@", image);