我有两个UIScrollViews,我之间移动图像。用户可以在滚动视图之间来回拖动。我试图动画图像从一个滚动视图到另一个滚动视图的运动。在-touchesMoved
(在我的UIViewController中处理,它有两个自定义UIScrollViews拦截触摸并发送到我的UIViewController),我试图设置我正在移动的UIImageView的“中心”。移动时,图像隐藏在UIScrollView后面,不可见。如何让它出现在UIScrollView的顶部?我可以通过在目标滚动视图中设置动画来正确处理-touchesEnded
。
我也对iPhone编程指南中的-convertPoint:fromView:
用法感到困惑(参见第3章,事件处理)。如果触摸坐标在窗口坐标中,要更改我的视图(在UIVcrollView内部的UIVmageView,在UIView内部和窗口内),我不必使用-convertPoint:toView:
,即
imageView.center = [self.view.window convertPoint:currentTouchPosition toView:imageView];
我错过了什么?
答案 0 :(得分:0)
您可以使用方法 - (void)bringSubviewToFront:(UIView *)视图,使图像视图成为最前面的视图。
约翰
答案 1 :(得分:0)
这取决于您构建视图的方式。如果scrollviews和imageview都处于同一级别,它应该可以工作。如果imageview是其中一个滚动视图的子视图,您可以尝试将滚动视图放在前面。这样,imageview也将被绘制在其他scrollview上。
约翰
答案 2 :(得分:0)
我有一个带有两个ScrollViews的View Controller。图像作为子视图添加。 ScrollViews已经在前面了。我尝试将scrollview带到前面,并将scrollview的imageview带到前面。但不知何故,当我拖动时,图像的中心越过我的其他scrollview2,我也尝试发回。但似乎没有用。这就是我在TouchesMove(在ViewController中)
所做的view = [[scrollView1 subviews] objectAtIndex:currentImageIndex];
[self.view bringSubviewToFront:scrollView1];
[scrollView1 bringSubviewToFront:view];
[self.view sendSubviewToBack:scrollView2];
scrollView1和scrollView2是两个滚动视图,它们是ViewController视图的一部分。 这有意义吗?
感谢 之功