iOS7では一般的な色合いが導入されました。 UIAlertView
も有効な範囲にあると思いますが、実際にはtintColorはUIAlertView
で機能するようには見えません。 (タップ可能なボタンのテキストの色)
警告ビューの色合いを変更することはできますか?可能であれば、それを変更する方法は?
残念ながら、アラートビューの外観をカスタマイズすることはできません。ボタンのテキストの色を変更することはできません。
IAlertViewクラスリファレンス :に明確に記載されています。
UIAlertViewクラスは、そのまま使用することを目的としており、サブクラス化をサポートしていません。このクラスのビュー階層はプライベートであり、変更しないでください。
更新:
質問はiOS7に関するものでしたが、現在UIAlertView
は非推奨です。UIAlertController
の場合、ビューの色合いの色を変更するだけです。
let alert = UIAlertController(title: "Gimme a break",
message: "For God sake its iOS7 question!",
preferredStyle: .alert)
alert.view.tintColor = UIColor.red
この質問を確認することも役立ちます: iOS9でUIAlertControllerボタンのテキストの色を変更するには?
[[UIView appearance] setTintColor:[UIColor redColor]];
に言及している以前の回答は機能するはずですが、このコードは、UIAlertView
の色合いの色だけを変更したい場合よりもはるかにうまく機能しています。
この方法でコンポーネントを狙うことができます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]];
UIActionSheet
は、この方法でボタンの色を変更することもできます。
[[UIView appearance] setTintColor:[UIColor redColor]];