2

这个问题与此类似

但是,UIAlertController我不想改变 every 的颜色,而是想像“AppDelegate”一样通用地改变它。因此,如果我在一处更改颜色,则所有警报控制器操作按钮都应更改为新颜色。我的问题是:

  1. 是否可以从 AppDelegate 做到这一点?如果没有,我该怎么做?
  2. Apple 是否会批准在所有 iOS 版本中将按钮颜色更改为自定义?
4

3 回答 3

6

是的,这是可能的。在 AppDelegate 中添加以下行,所有 UIAlertControllers 将设置色调颜色!

[[UIView appearanceWhenContainedIn:[UIAlertController class], nil] setTintColor:[UIColor blackColor]];
于 2018-03-05T07:30:27.717 回答
1

是的,你可以做到。做一件事:

  1. 让 Class 的子UIAlertController类说MyAlertController
  2. 在 .m 文件中的viewDidLoad方法 write

self.view.tintColor = [UIColor requiredColor];

它会改变按钮的颜色。它会工作:)

于 2016-02-11T11:30:29.313 回答
0

下面是.h文件

@interface MyAlertController : UIAlertController

@end

下面是.m文件

@interface MyAlertController ()

@end

@implementation MyAlertController

- (void)viewDidLoad
{

[super viewDidLoad];
    self.view.tintColor = [UIColor redColor];

}
于 2016-02-11T13:18:43.083 回答