2

XIBを使用して、カスタムナビゲーションバーと右ナビゲーションボタンを作成しました。これは正常に機能します。ただし、右側のナビゲーションボタンの色合いをカスタマイズする必要があります。現時点では、この色合いはナビゲーションバーの色合いと同じ色です。この右ボタンには別の色が必要です。この色を変える方法はありますか?

ありがとうございました。

4

4 に答える 4

15

iOS 5には、「外観」機能があります。

[[UIBarButtonItem appearance] setTintColor:YOUR_COLOR];

于 2012-05-01T09:34:35.077 に答える
5

私の知る限りでは、ボタンはナビゲーションバーの色合いを継承しています。できることは、navigationItemのcustomViewを設定することです。

SDKのボタンの1つを使用して設定する方法は次のとおりです。

UIBarButtonItem *shareButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(shareButtonHandler:)];

[self.navigationItem setRightBarButtonItem:shareButton];
[shareButton release];

代わりに、次のように実行できます。

UIBarButtonItem *btn = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"yourImage.png" style:UIBarButtonItemStyleBordered target:self action:@selector(customButtonHandler:)]];

フォトショップなどで作成した画像を使用する場合。

alsinitWithCustomView:UIViewまたはinitWithTitle:NSStringあなたが使用できるものがあります。

申し訳ありませんが「1行の解決策」はありません:)

于 2010-12-23T15:21:09.590 に答える
1

Swift 3.x

UIBarButtonItem.appearance().setTitleTextAttributes([NSForegroundColorAttributeName : Color.primaryActionColor], for: .normal)
于 2017-02-02T13:08:41.517 に答える
0

カスタムビューのナビゲーションバーボタンアイテムがある場合は、最初にUIButtonに変換する必要があります。

navigationItem.rightBarButtonItem?.customView as? UIButton

次に、次のようなUIButtonの属性を追加できます。

button.setTitleColor(UIColor.black.withAlphaComponent(0.1), for: .normal)
于 2019-04-12T12:23:42.527 に答える