UIAlertView
ボタンのタイトルの色を変更するにはどうすればよいですか。
タイトルOk
を赤い色にしたい。
実際、iOS8ではUIAlertControllerのビューの色合いを変更できます。
UIAlertController *alertController = ....
[alertController.view setTintColor:[UIColor greenColor]];
Swift 3の場合、使用:
alertController.view.tintColor = UIColor.red
[〜#〜] after [〜#〜]アラートコントローラーを提示します
UIAlertController
を使用している場合は、TravisWeertsの回答が機能するはずです。 UIAlertView
を使用している場合は、UIView
の外観設定を使用できます。
この方法でアラートコンポーネントを狙うことができますiOS <9の場合:
[[UIView appearanceWhenContainedIn:[UIAlertView class], nil] setTintColor:[UIColor redColor]];
[[UIView appearanceWhenContainedIn:[UIAlertController class], nil] setTintColor:[UIColor redColor]];
そしてiOS 9の場合:
[[UIView appearanceWhenContainedInInstancesOfClasses:@[[UIAlertView class]]] setTintColor:[UIColor redColor]];
[[UIView appearanceWhenContainedInInstancesOfClasses:@[[UIAlertController class]]] setTintColor:[UIColor redColor]];
最良の方法(そして最も簡単な方法)は次のとおりです。
alert = UIAlertController(title: "foo", message: "foo", preferredStyle: UIAlertControllerStyle.Alert)
alert.addAction.... foo
...foo
alert.view.backgroundColor = UIColor.orangeColor()
alert.view.tintColor = UIColor.orangeColor()
alert.view.layer.cornerRadius = 0.5 * alert.view.bounds.size.width
また、背景に「丸い色あせたオレンジ色の円」のプラス効果があります。
それが役に立てば幸い
アラートビューの外観をカスタマイズすることはできません。
詳細については IAlertViewクラスリファレンス:
UIAlertViewクラスは、そのまま使用することを目的としており、サブクラス化をサポートしていません。このクラスのビュー階層はプライベートであり、変更しないでください。
これを試して:
[[UIView appearance] setTintColor:[UIColor whiteColor]];