2010-02-16 171 views
5

我想通過使用UITableView創建一個網格視圖(我的老問題已經指出我在這個方向),目前正在設置個別項目的意見。創建了一個顯示每行3個項目的自定義UITableViewCell後,我決定將這些項目拖放到名爲ItemView的UIView的子類中。UIView背景顏色

然後將此ItemView作爲子視圖添加到自定義UITableViewCell中以顯示網格。無論如何,我已經設法創建視圖,並可以讓它顯示一個UILabel的罰款,但我有麻煩的改變ItemView是透明的,除了它的UIViews(標籤,按鈕,圖像等)。這裏是我的UIView代碼:

#import <UIKit/UIKit.h> 
@interface ItemView : UIView { 
} 
@end 

#import "ItemView.h" 
@implementation ItemView 

- (id)initWithFrame:(CGRect)frame { 
    if ((self = [super initWithFrame:frame])) { 
    } 
    return self; 
} 

- (void)drawRect:(CGRect)rect { 
    [self setBackgroundColor:[UIColor lightGrayColor]]; 
} 

- (void)dealloc { 
    [super dealloc]; 
} 
@end 

我應該在哪裏設置背景顏色以使其正常工作?

乾杯

+0

嗨傑克, 你可以請張貼在這裏的解決方案? – Piyush 2011-03-16 12:04:26

回答

11

嘗試:

self.backgroundColor = [UIColor clearColor]; 

我看不出有任何理由不有,在你的init方法。我不認爲你想重寫drawRect:在這種情況下,你需要自己繪製整個視圖。

+1

我曾試過這個,但是在查看了其餘的代碼之後,我發現了一大堆弄亂它的東西。最後讓它工作。感謝您的迴應。 – Jack 2010-02-22 18:11:14