首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与CATransform3D重叠的视图与其他视图重叠

与CATransform3D重叠的视图与其他视图重叠
EN

Stack Overflow用户
提问于 2013-07-16 15:58:58
回答 1查看 606关注 0票数 1

我是CATransform3D的新手。我真的想用这段代码在我的UIImageView上实现3D转换效果。

代码语言:javascript
复制
CALayer *layer = imageView.layer;
CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity;
rotationAndPerspectiveTransform.m34 = 1.0 / -500;
rotationAndPerspectiveTransform = CATransform3DRotate(rotationAndPerspectiveTransform, aSlider.value, xSlider.value, ySlider.value, zSlider.value);
layer.transform = rotationAndPerspectiveTransform;

我的问题是,转换后的UIImageView会遍历视图,它位于视图的子视图数组中。那是在转型之前

这是在变形之后。

我只需要转换图像视图,而不是覆盖其他视图。我该怎么做呢?

PS。对于糟糕的英语和大图片,我深表歉意。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-16 17:16:07

@Padavan,这里看起来层的Z轴是相交的。

试试这个:

代码语言:javascript
复制
CGFloat zOrigin = -100; // You can change this value as required.
layer.transform = CATransform3DMakeTranslation(0, 0,zOrigin);

这会将你的图层推回去,而且它不会相交。

希望能有所帮助。

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

https://stackoverflow.com/questions/17671082

复制
相关文章

相似问题

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