我有viewController
UIPickerView
和UIDatePicker
,如下storyboard
的屏幕截图所示。
我尝试按照here解释添加运行时属性。但是它只是改变了最初突出显示的文本的字体颜色。
我想将pickerView和datePicker中的文本颜色更改为白色。我不知道如何实现它。
答案 0 :(得分:9)
您需要编写此行来更改日期选择器文本颜色
self.datePicker.setValue(UIColor.white, forKeyPath: "textColor")
它将更改UIDatePicker
对于PickeView
,您必须设置属性字符串,
func pickerView(_ pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? {
return NSAttributedString(string: "Your Text", attributes: [NSForegroundColorAttributeName:UIColor.blue])
}
答案 1 :(得分:2)
这两行为我节省了一天。
NepaliDatePicker.setValue(UIColor.white, forKey: "textColor")
EnglishDatePicker.setValue(UIColor.white, forKey: "textColor")
答案 2 :(得分:1)
您可以对“UIPickerView”使用“viewForRow”委托方法
override func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let vc = self.storyboard?.instantiateViewController(withIdentifier: "second") as! ViewController
let imagenew = UIImage(named: iosImages[indexPath.row])
print(imagenew!)
vc.img = imagenew as Any as! UIImage
navigationController?.pushViewController(vc, animated: true)
}
对于UIDatePicker,您无法更改字体,但可以使用此代码更改textColor。
func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView {
// Your custom view with custom font here
}
希望这有帮助。
答案 3 :(得分:-1)
您可以使用picker视图的attributionTitleForRow委托方法来更改颜色。请参阅此链接How do I change the color of the text in a UIPickerView under iOS 7?。您还可以使用viewForRow委托方法并添加自定义UILabel作为视图。