浏览代码

Prefer new imageWithTintColor API when tinting an UIImage (#5458)

With this change, dynamic colors will be supported when tinting an image and the image color will change on the fly depending on the dynamic provider and traits. This will be especially useful when supporting the new dark mode in iOS 13.
Danilo Bürger 5 年前
父节点
当前提交
5d751f643a
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5
    0
      lib/ios/UIImage+tint.m

+ 5
- 0
lib/ios/UIImage+tint.m 查看文件

@@ -4,6 +4,11 @@
4 4
 
5 5
 - (UIImage *)withTintColor:(UIColor *)color {
6 6
 	UIImage *newImage = [self imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];
7
+#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 130000
8
+	if (@available(iOS 13.0, *)) {
9
+		return [newImage imageWithTintColor:color];
10
+	}
11
+#endif
7 12
 	UIGraphicsBeginImageContextWithOptions(self.size, NO, newImage.scale);
8 13
 	[color set];
9 14
 	[newImage drawInRect:CGRectMake(0, 0, self.size.width, newImage.size.height)];