2012-02-23 61 views
0

我有以下代碼:問題改變UIToolbar tintColor

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
{ 
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; 
    if (self) { 
     // Custom initialization  
     webControlsToolbar_ = [[UIToolbar alloc] init]; 
     [self.webControlsToolbar_ setTintColor:[UIColor colorWithRed:246.0/255.0 green:246.0/255.0 blue:246.0/255.0 alpha:1]]; 

任何想法,爲什麼顏色仍然是黑色實?在我看來沒有負載我添加了工具欄:

self.webControlsToolbar_.frame = CGRectMake(0, self.view.frameHeight - self.webControlsToolbar_.frameHeight + 1.0, self.view.frameWidth, self.webControlsToolbar_.frameHeight); 
     [self.view addSubview:self.webControlsToolbar_]; 
+1

您可以顯示代碼顯示工具欄的位置嗎?此外,爲什麼工具欄初始化了兩次? – Aaron 2012-02-23 20:30:33

+0

編輯上面的代碼,雙重初始化只是一個輸入錯誤 – adit 2012-02-23 20:33:48

+0

'self.webControlsToolbar_'是一個IBOutlet嗎? – Aaron 2012-02-23 20:36:54

回答

-1

你必須改變在viewDidLoad方法這個屬性:

-(void)viewDidLoad{ 
    [super viewDidLoad]; 
    //Custom initialization 
    [self.webControlsToolbar_ setTintColor:[UIColor colorWithRed:246.0/255.0 green:246.0/255.0 blue:246.0/255.0 alpha:1]]; 

} 
+0

做到了這一點,並沒有工作 – adit 2012-02-23 20:49:27

0

我遇到過類似的問題。我通過在代碼中顯示工具欄之前立即設置色調來解決它。看看是否適合你。

0

我覺得它更容易設置一個按鈕,標籤等的背景顏色正是我想用工具欄,然後創建被稱爲插座說,myOutlet,並做到這一點:

[self.webControlsToolbar_ setTintColor:myOutlet.backgroundColor]; 
0

的問題是在該行

self.webControlsToolbar_.frame = CGRectMake(0, self.view.frameHeight - self.webControlsToolbar_.frameHeight + 1.0, self.view.frameWidth, self.webControlsToolbar_.frameHeight); 

嘗試NSLog a self.webControlsToolbar_.frameHeight財產,你應該看到這是零後[UIToolBar new];改爲使用一個恆定的高度。

+0

這與設置色調顏色有什麼關係?它打印44 BTW – adit 2012-02-23 21:45:48