Closed MoLice closed 1 year ago
已修复该问题,请根据 iOS 版本支持情况选择升级到 4.6.0(iOS 11-16) 或 4.6.1(iOS 13-16)。
@MoLice 版本4.6.0中, 代码如下: CGColorRef cgColor = CGColorCreate(CGColorSpaceCreateDeviceRGB(), (CGFloat[]){rawColor.qmui_red, rawColor.qmui_green, rawColor.qmui_blue, rawColor.qmui_alpha});
用 CGColorCreate创建出来的颜色空间放到QMUICGColorOriginalColorBindKey中,但是会造成到处内存leak哇,因为 CGColorCreate要对应CGColorRelease 啊,这遵守MRC的。我从leak 跟踪到,如果没有用这个功能估计要屏蔽掉或者其他方式,希望大佬修复~,不然会造成库到处Leak不稳定问题~。
有两处地方 UIColor+QMUITheme 和 UIColor+QMUI
@sugerGDev 2022-12 已修复该泄露。
@MoLice 哦哦哦,我看到最新版本修复了。应用版本限制,没升级到最新。用leak在QMUI找了一会儿发现了,收获很多,哈哈哈
如何重现
以上代码预期在 Light/Dark 切换时 view.backgroundColor 固定显示③的绿色,但实际运行后会发现切换 Light/Dark 时,view.backgroundColor 在①②里变化,③无效了。
关键在于②③必须是相同的颜色。
其他信息