我正在尝试在图像上绘制半透明的形状。
我有一个UIView
,它的图层内容设置为图像,其中CAShapeLayer
子图层的路径设置为该形状。父UIViews
中有一些UIView
,UIScrollView
是UIViews
的缩放子。
iPhone上的一切都很好,但是当我放大iPad时,CAShapeLayers
变大了,CAShapeLayers
消失了。图像显示正常。我猜这个问题是一个大小问题,所以我将CAShapeLayers
分成两部分,这样左边和右边都有。现在,它们都会被显示,除非用户放大到很远,例如在“最大变焦”之前“松开”,就在它们反弹之前。
进一步分割我的CAShapeLayers
是可行的,但有点狡猾。所以,我有几个问题:
CAShapeLayers
是否有最大尺寸限制?为什么它不适用于图层的图像内容?UIScrollView
内缩放时会UIScrollView's
重新绘图?英寸时不应该整个缩放视图({{1}}直接子节点)被光栅化吗?我怎么能这样做?答案 0 :(得分:1)
事实证明,我的电脑(2006 MacBook)上的最大区域是1024 * 1024。
iPad上的全屏形状为1004像素高,最大宽度约为1044像素,例如,如果您想在水平滚动视图中使用大型形状。
当捏合反弹变焦时,形状的实际高度变大,将最大宽度向下推至约250像素。这比我想要的要窄,但可行。
在物理iPad上可能会有所不同,但这些是我开发盒中模拟器的限制。