因此,我遵循了一個教程,該教程允許我繼承UIToolbar並將圖像作爲UIToolbar的自定義背景。如何以編程方式將平面背景UIColor渲染爲UIToolbar的背景?
代碼是這樣的:
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect
{
UIImage *backgroundImage = [UIImage imageNamed:@"toolbar_background.png"];
[backgroundImage drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
這完美的作品。考慮到我只是想讓我的工具欄背景變成一個平坦的顏色。基本上像[UIColor blackColor],是否有一個更簡單的方法來做到這一點在drawRect方法?
必須製作一個320 x 44像素高度的平黑色背景圖像,並使用上面的代碼看起來像極端的開銷當[UIColor blackColor]可用?我只是不確定如何在這裏實現它。
我想過做這樣的事情,而不是:
- (void)drawRect:(CGRect)rect
{
UIView *test = [[UIView alloc] initWithFrame:CGRectMake(0,0,self.frame.size.width,self.frame.size.height)];
test.backgroundColor = [UIColor blackColor];
[self addSubview:test];
}
但是,這並不工作,因爲隨後的UIView COVERS所有的UIToolbar項目,我以後再添加即工具欄是黑色的,是的,但黑色超過所有工具欄項目,因此它們不可見。
是否有解決方法?
謝謝。
覆蓋'drawRect:'這樣的方法是一個**現象不佳的IDEA **。 – 2011-04-15 16:49:29