我正在尝试使用UITableView创建网格视图(我的旧问题已经指向了这个方向)并且我正在为各个项目设置视图。创建了一个每行显示3个项目的自定义UITableViewCell后,我决定将这些项目放入一个名为ItemView的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 :(得分:11)
尝试:
self.backgroundColor = [UIColor clearColor];
我认为你的init方法没有任何理由不这样做。我认为您不想覆盖drawRect:在这种情况下,您需要自己绘制整个视图。