16

私たちのデザイナーは、無効にされたUIBarButtonItemsのテキストに特定の色を使用するように私に依頼しました。これを実装するために使用したコード:

NSDictionary* textAttributes = [NSDictionary dictionaryWithObject: [UIColor blueColor]
                                                           forKey: UITextAttributeTextColor];

[[UIBarButtonItem appearance] setTitleTextAttributes: textAttributes
                                            forState: UIControlStateDisabled];

ただし、テキスト属性は変更されません。

私はこのコードを通常の状態で試し、setBackgroundImageを使用してUIControlStateDisabledボタンの背景を変更しようとしましたが、すべてのthouse実験は完全に機能します。しかし、この単一の組み合わせ:setTitleTextAttributesとUIControlStateDisabledは何もしません。

グーグルは私にその特定の組み合わせについての関連する答えを与えませんでした。

無効になっているUIBarButtonItemの色を変更する他の方法や、無効になっているアイテムに対してsetTitleTextAttributesを機能させる方法を知っている人はいますか?

4

2 に答える 2

29

制御状態が正常と無効の両方に設定する必要があります。

(2015-11-18-iOS 9.1の時点でも、両方を設定する必要があります。)

于 2012-11-16T17:02:49.183 に答える
0

iOS5.1では問題なく動作しています。おそらくそれは5.0のバグでした。

于 2012-08-31T22:00:13.673 に答える