0
我創建了一個配置管理器來更新UI設置而無需重新啓動。大多數設置你可以強制重畫,但它似乎更多限制與標籤欄。Swift:動態刷新選項卡欄背景顏色
我用下面的內我UITabBarController
更新標籤欄時,我收到了配置變更通知(注:這可能是viewDidLoad
之後的任何時間):
self.tabBar.backgroundColor = tabBarBackgroundColour
這不更新的顏色,而是5只後約-10秒。
我試過各種方法來強制更新使用setNeedsLayout
和setNeedsDisplay
在標籤欄和視圖,但沒有一個工作。
self.tabBar.setNeedsLayout()
self.tabBar.setNeedsDisplay()
或
self.view.setNeedsLayout()
self.view.setNeedsDisplay()
我也試着更新個人標籤欄項目,我看到更新的圖像時,其他人都有過類似的問題,但無濟於事。
你確定你正在更新主線程的顏色嗎?我記得,如果你從後臺線程更新UI,它有時會延遲繪製... – JohnnyAW