回答:
使用する
Objective-C
[headingButton setTitleColor:[UIColor colorWithRed:36/255.0 green:71/255.0 blue:113/255.0 alpha:1.0] forState:UIControlStateNormal];
迅速
headingButton.setTitleColor(.black, for: .normal)
から拡張されたカスタムクラスMyButtonを作成しましたUIButton。次に、これを内に追加しましたIdentity Inspector:

この後、ボタンタイプをCustomに変更します。

そして、あなたは次のように属性を設定することができますtextColorし、UIFontあなたのためのUIButtonさまざまな状態のために:

次に、MyButtonクラス内に2つのメソッドも作成しました。これをUIButton強調表示して表示したい場合は、コード内で呼び出す必要があります。
- (void)changeColorAsUnselection{
[self setTitleColor:[UIColor colorFromHexString:acColorGreyDark]
forState:UIControlStateNormal &
UIControlStateSelected &
UIControlStateHighlighted];
}
- (void)changeColorAsSelection{
[self setTitleColor:[UIColor colorFromHexString:acColorYellow]
forState:UIControlStateNormal &
UIControlStateHighlighted &
UIControlStateSelected];
}
のドキュメントによると、一度に複数の状態が存在する可能性があるためtitleColor、通常、ハイライト、および選択にを設定する必要UIControlStateがありますUIControlState。これらのメソッドを作成しない場合、UIButtonは選択または強調表示を表示しますが、選択自体を表示するためではなく、選択の短い表示にのみ使用できるため、UIColor内部の設定に留まりUIInterface Builderません。
|代わりに使用する必要はありません&か?
Swiftの場合:
ラベルのテキストの色の変更は、の変更とはかなり異なりUIButtonます。UIButtonこのメソッドを使用してテキストの色を変更するには:
self.headingButton.setTitleColor(UIColor(red: 107.0/255.0, green: 199.0/255.0, blue: 217.0/255.0), forState: UIControlState.Normal)