2011-08-19 85 views
0

我用下面的代碼的多個按鈕添加到導航控制器添加到工具欄導航控制器 - 顏色失配

UIToolbar* toolbar = [[UIToolbar alloc] 
         initWithFrame:CGRectMake(0, 0, 100, 44)]; 
toolbar.tintColor = [UIColor clearColor]; 
[toolbar setBarStyle: UIBarStyleBlackTranslucent]; 

... 

的問題是工具欄的背景不100%匹配到導航欄。工具欄頂部顯示一條小行。顏色幾乎是相同的,但如果你仔細看,你可以看到長方形......

我不按照委託設置導航欄

self.navigationController.navigationBar.tintColor = [UIColor colorWithRed:.0 green:.0 blue:.0 alpha:.4]; 

任何想法的背景怎麼弄背景顏色匹配導航欄的顏色?

screen capture of the problem

回答

0

,使這項工作的最好方法就是讓工具條完全透明。做到這一點的一種方法是繼承UIToolbar並覆蓋drawRect:什麼也不做。

這裏是我實施UITransparentToolbar的(注意,這個假設的工具欄將通過廈門國際銀行創建。):

@implementation UITransparentToolbar 

- (id)initWithCoder:(NSCoder *)decoder 
{ 
    if (self = [super initWithCoder:decoder]) 
    { 
     self.backgroundColor = [UIColor clearColor]; 
     self.opaque = NO; 
     self.translucent = YES; 

    } 
    return self; 
} 

- (void)drawRect:(CGRect)rect 
{ 
} 

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

@end 
相關問題