首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用CAShapeLayer子层的CAShapeLayer速度较慢

使用CAShapeLayer子层的CAShapeLayer速度较慢
EN

Stack Overflow用户
提问于 2012-06-25 21:35:22
回答 1查看 1.1K关注 0票数 0

我有一个带有CAShapeLayer子层的UIScrollView,它呈现了一条简单的线。CAShapeLayer子层有自己的子CAShapeLayer。这会导致滚动和缩放速度变慢。层次结构如下所示:

-UIScrollViewLayer -CAShapeLayer -CAShapeLayer

如果我将此层次结构更改为只有一个级别深,则不会出现性能问题:

-UIScrollViewLayer -CAShapeLayer -CAShapeLayer

我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2012-06-25 22:47:05

塞梅尔

所以我的滚动视图控制器目前正在做这件事:

代码语言:javascript
复制
[self.uiview.layer addSublayer:myCALayer];

myCaLayer在其init方法中也可以做到这一点:

代码语言:javascript
复制
CAShapeLayer *overlayLayer = [[CAShapeLayer alloc] init];
[self addSublayer:overlayLayer]

由于某些原因,我发现这个层次结构很慢。如果我改为展平层次结构并在uiscrollview控制器中执行此操作:

代码语言:javascript
复制
[self.uiview.layer addSublayer:myCALayer];
CAShapeLayer *overlayLayer = [[CAShapeLayer alloc] init];
[self.uiview.layer addSublayer:overlayLayer]

那么性能就会好得多。希望这更有意义。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11190380

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档