当显示选择和弹出视图时,自定义操作(UIPreviewAction
对象)以默认的iOS蓝色显示。
有什么方法可以用不同颜色着色吗?
答案 0 :(得分:2)
对于iOS 11,似乎有用的是添加didFinishLaunchingWithOptions
:
UIApplication.sharedApplication.delegate.window.tintColor = MY_COLOR
我不确定相同的方法是否适用于iOS11之前的版本,但这对iOS11之前的版本有用:
在预览控制器的viewWillAppear
方法中(实现previewActionItems
方法的viewController添加:
- (void) viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
UIView* container = [self.view superviewOfClass:NSClassFromString(@"_UIVisualEffectContentView")];
container.tintColor = YOUR_COLOR;
}
superviewOfClass
方法在UIView+MyUtils
类别中实施:
- (UIView*) superviewOfClass:(Class)c
{
UIView* parent = self;
while ((parent = parent.superview))
{
if ([parent isKindOfClass:c])
{
return parent;
}
}
return nil;
}