Yanıtlar:
kullanım
Objective-C
[headingButton setTitleColor:[UIColor colorWithRed:36/255.0 green:71/255.0 blue:113/255.0 alpha:1.0] forState:UIControlStateNormal];
hızlı
headingButton.setTitleColor(.black, for: .normal)
Özel bir sınıf MyButton genişletilmiş yarattım UIButton. Sonra şunu içine ekledi Identity Inspector:

Bundan sonra, düğme türünü Özel olarak değiştirin :

Sonra gibi özelliklerini ayarlayabilirsiniz textColorve UIFontiçin senin UIButtonfarklı devletler için:

Sonra da MyButtonbir UIButtonvurgulanmış olarak görüntülenmesini istediğinizde benim kod içinde çağırmak zorunda sınıf içinde iki yöntem oluşturdu :
- (void)changeColorAsUnselection{
[self setTitleColor:[UIColor colorFromHexString:acColorGreyDark]
forState:UIControlStateNormal &
UIControlStateSelected &
UIControlStateHighlighted];
}
- (void)changeColorAsSelection{
[self setTitleColor:[UIColor colorFromHexString:acColorYellow]
forState:UIControlStateNormal &
UIControlStateHighlighted &
UIControlStateSelected];
}
titleColorNormal, vurgulamak ve seçmek için ayarlamanız gerekir , UIControlStateçünkü belgelerine göre aynı anda birden fazla durum olabilir UIControlState. Bu yöntemleri oluşturmazsanız, UIButtonseçim veya vurgulamayı görüntüler, ancak seçimin kendisini görüntülemek için değil, yalnızca seçimin kısa bir gösterimi için kullanılabilir oldukları için UIColorkurulumunuzda UIInterface Builderkalmazlar.
|yerine kullanılmamalıdır &mı?
Swift'te:
Etiket metni rengini değiştirmek, a için değiştirmekten oldukça farklıdır UIButton. Bir metnin rengini değiştirmek için UIButtonbu yöntemi kullanın:
self.headingButton.setTitleColor(UIColor(red: 107.0/255.0, green: 199.0/255.0, blue: 217.0/255.0), forState: UIControlState.Normal)
swift 5 sürümü:
Varsayılan dahili rengi kullanarak:
button.setTitleColor(UIColor.green, for: .normal)VEYA
RGB yöntemini kullanarak özel renginizi kullanabilirsiniz:
button.setTitleColor(UIColor(displayP3Red: 0.0/255.0, green: 180.0/255.0, blue: 2.0/255.0, alpha: 1.0), for: .normal)