我有一个包含许多子视图的视图(代表数学对象 - 想象一个方程组,每个方程中的每个项都是一个单独的控件)。我希望能够放大和缩小视图,并平移它。但我不想要使用UIScrollView
,至少不是传统方式,因为视图中的控件使用了很多相同的手势 - 滑动,捏合等等。 / p>
一种替代方法是使用UIScrollView
但是“锁定”视图以使其不会缩放或平移,允许控件接收这些手势,然后使用按钮进行缩放和平移 - 有点像Mapquest上的控件(在线)。但这感觉非常“离散”(不连续和平滑)和老式。
有更好的方法吗?
答案 0 :(得分:0)
您可以使用自定义浮动导航控件,而不是使用滚动条和按钮等标准UI元素来操作主视图。在视图的一个角落中创建一个小矩形,该矩形始终保留在那里并保持其大小,而不管主视图的缩放或平移值如何。用户可以在其中使用标准手势来缩放和平移主视图 诀窍是使其直观,以便用户明白这是视图的使用方式。在rect中显示整体视图的缩小的快照是一种技术。
顺便说一下,当你说使用标准控制不是连续和平滑时,我不确定你是什么意思。为什么不?您应该能够获得与手势相同的交互水平。