2016-08-23 58 views
2

我有一個iOS 8以後的應用程序。它的工作方式是你有一個UITableView並點擊單元格來產生一個分數,這取決於UItoolbar的得分iOS 10,UIToolbar背景顏色不變

func updateToolbarAndLabel(score: Int) { 

    if(score <= -1) { 
     self.toolbar.backgroundColor = UIColor.greenColor() 
    } else if(score <= 0) { 
     self.toolbar.backgroundColor = .None 
    } else if(score <= 9) { 
     self.toolbar.backgroundColor = UIColor.greenColor() 
    } else if(score <= 29) { 
     self.toolbar.backgroundColor = UIColor.yellowColor() 
    } else if(score >= 30) { 
     self.toolbar.backgroundColor = UIColor.redColor() 
    } 
    if (score <= 0) { 
     self.scoreshow.text = "0" 
    } else { 
     self.scoreshow.text = (score as NSNumber).stringValue } 
} 

然後它被稱爲每次表視圖抽頭與此:

FUNC的tableView(的tableView:UITableView的,didSelectRowAtIndexPath方法indexPath:NSIndexPath) {

較薄的底部採用這種方法改變顏色g是,自從我構建應用程序以來,它一直都在運行,但在iOS 10中,它並沒有。簡單地說顏色不改變...

任何幫助,將不勝感激

+0

同樣在這裏 - 你找到了解決方案嗎? –

+0

任何人都可以解決這個問題? –

+0

看到我的回答上面 – Jp4Real

回答

8

我能解決這個問題,它改變了這個:BarTintColor,發現自己無法找到蘋果文檔的任何mentionning它

使用方法如下:self.toolbar.barTintColor

編輯:有sometinhg現在mentionning它在GM發佈文檔,參見下文

+0

這不適合我嗎? – Khoury

+0

發表你的代碼,也是這樣迅速2.3不快3 – Jp4Real

+0

Ahhk,這個不適用於swift 3或者? – Khoury

1

我設法讓在IOS 10和斯威夫特3此項工作與此代碼答案:

let dummyToolbar = UIToolbar() 
dummyToolbar.barTintColor = .lightGray 
dummyToolbar.sizeToFit() // without this line it doesn't work