When I try setting the color of a UILabel to the color of another UILabel using the code
myLabel.textColor = otherLabel.textColor
It doesn't change the color. When I use this code, however,
myLabel.textColor = UIColor.redColor()
It changes the color correctly. What's the issue with the first line?
When you click the color box in the UI you will see it get selected. If you don't see it get selected, click it again. It's when it doesn't get selected that the colour changes the background instead (which seems to be the default selection if you keep the color picker open).
The easiest workaround is create dummy labels in IB, give them the text the color you like and set to hidden. You can then reference this color in your code to set your label to the desired color.
yourLabel.textColor = hiddenLabel.textColor
The only way I could change the text color programmatically was by using the standard colors, UIColor.white
, UIColor.green
...
This code example that follows shows a basic UILabel
configuration.
let lbl = UILabel(frame: CGRectMake(0, 0, 300, 200)) lbl.text = "yourString" // Enum type, two variations: lbl.textAlignment = NSTextAlignment.Right lbl.textAlignment = .Right lbl.textColor = UIColor.red lbl.shadowColor = UIColor.black lbl.font = UIFont(name: "HelveticaNeue", size: CGFloat(22)) self.view.addSubview(lbl)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With