我正在寻找一些方向来帮助在我的应用中实现特定功能。
这有点难以解释,但这里有。虽然我使用多层隐喻(一种Photoshop)可视化我的目标,但这只是为了解释我的愿景 - 我意识到这在实践中可能并不合理。
我设想了3个“层”
最后,需要能够用手指在屏幕上拖动每个窗口,以便独立地重新定位每个窗口。
如果每个窗口都可以调整大小(不是形状 - 仍然是正方形),理想情况下可以使用某种手指姿势来获得额外的功劳。
我不是在找代码(虽然我不反对)。我正在寻找一种在Objective-C中实现这一目标的方法,理想情况下我不需要深入研究某些图形框架等高级主题。
谢谢! 贝。
答案 0 :(得分:1)
我会重新安排它。相反,有一个背景图像的平面图像,底部印有50%的灰色。然后,您拥有的两个正方形实际上是UIImageViews,背景图像设置为固定位置,图像视图将该图像剪切到其边界。当您移动两个图像视图时,您只需翻译图像的原点。
抱歉,这很难解释我的想法。我应该试着把它画出来。
答案 1 :(得分:0)
以下是我想尝试的概述。
我会使用2个视图(不是图层)。最底部的视图是图像视图。
顶视图是自定义视图。此自定义视图将有两个其他视图作为子视图。这两个子视图将代表两个“漏洞”。使用自己的手势识别器设置两个子视图以处理平移和缩放。为两个子视图(和容器视图)提供清晰的背景和可能的边框。此自定义视图的主视图需要实现其drawRect:
方法。实现将绘制部分透明的灰色背景。在绘制灰色之前,它将使用两个子视图的位置和大小来设置剪切区域。
每次调整或移动2个子视图时,您需要在容器视图上调用setNeedsDisplay
,以便调用drawRect:
方法刷新带有孔的灰色背景。