From 03b7e90a47488750467e2e0ceb1334d1008d7c4f Mon Sep 17 00:00:00 2001 From: Li Zhijie Date: Fri, 13 Mar 2020 20:44:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E6=B8=B2=E6=9F=93=E6=97=B6layer=20conte?= =?UTF-8?q?ntScale=E6=80=BB=E4=B8=BA1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- YYAsyncLayer/YYAsyncLayer.m | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/YYAsyncLayer/YYAsyncLayer.m b/YYAsyncLayer/YYAsyncLayer.m index 203db19..bcf7cf2 100644 --- a/YYAsyncLayer/YYAsyncLayer.m +++ b/YYAsyncLayer/YYAsyncLayer.m @@ -58,6 +58,8 @@ static dispatch_queue_t YYAsyncLayerGetReleaseQueue() { #endif } +static CGFloat layerContentScale = 1.0; // 使用这个解决scale为1的问题,这个异步渲染库有bug,YYText那里把contentScale重置了,所以看不到 + @implementation YYAsyncLayerDisplayTask @end @@ -83,6 +85,7 @@ - (instancetype)init { static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ scale = [UIScreen mainScreen].scale; + layerContentScale = scale; }); self.contentsScale = scale; _sentinel = [YYSentinel new]; @@ -107,6 +110,7 @@ - (void)display { #pragma mark - Private - (void)_displayAsync:(BOOL)async { + self.contentsScale = layerContentScale; __strong id delegate = (id)self.delegate; YYAsyncLayerDisplayTask *task = [delegate newAsyncDisplayTask]; if (!task.display) {