我有UISegmentedControl,我在透明背景上添加了一些白色圖像。未選擇UISegmentedContol:reverse tintColor and backgroundColor
for (index,element) in ELEMENTS.enumerate() {
segmentedControl.insertSegmentWithImage(element.logo, atIndex: index, animated: false)
}
段現在有背景色設置爲segmentedControl.backgroundColor,圖像被着色segmentedControl.tintColor。所選片段反轉,背景設置爲.tintColor,圖像用.backgroundColor着色。
這工作正常,但我希望它是另一種方式:所選段具有用.tintColor着色的圖像和用背景着色的.backgroundColor。
我知道我可以通過只是切換代碼的顏色做到這一點,但我使用
let sharedApplication = UIApplication.sharedApplication()
sharedApplication.delegate?.window??.tintColor = newColor
在應用更改的應用程序的所有意見的tintColor,所以這將是很好如果這會導致顏色以我想要的方式在我的分段控制中改變。
任何想法?
你可以通過設置'UISegmentedControl.tintColor'改變色調的顏色只適用於本控制。 – mixel
是的,但後來我必須每次都做sharedApplication.delegate?.window ??。tintColor = newColor和UISegmentedControl.tintColor = newColor,對嗎? – Jambaman
不可以。您可以使用'sharedApplication.delegate?.window ?? tintColor = newColor'來僅設置全局色調顏色一次。每當您想爲此控件設置自定義色調顏色時,都使用「UISegmentedControl.tintColor」。你也可以嘗試使用'UISegmentedControl.appearance()。tintColor'爲應用程序中的所有分段控件設置自定義的色調顏色。 – mixel