视觉之外的UIViews不可触摸

时间:2014-08-07 01:31:53

标签: ios objective-c uiview

我正在使用iOS 7应用。

我的ViewController.view可垂直拖动,并在两个位置之间捕捉。 当我向上拖动时,ViewController的{​​{1}}属性大约为-45。

显然,center.y内的一些对象位于"界外"。我与这些人的问题,特别是他们是ViewController.view的问题是,他们似乎不接受接触。我实际上实现了:

UITableView

在(最初)低于-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event;范围的区域内,此方法不会在触摸时调用。

对象是可见的,我只是无法与它们互动。最初位于ViewController.view范围内的所有内容都可以正常工作。

我尝试在ViewController.view内将ViewController.view.frame.size.height设置为1000,但这似乎不起作用。我还尝试删除并再次添加对象 - 这不起作用。

我是否必须将所有内容放在viewWillAppear下的单独视图中,或者是否有更简单的解决方案?

1 个答案:

答案 0 :(得分:0)

我搜索了周围的每一个touchesBegan的例子我发现移动子视图而不是主视图。当您在视图控制器上实现touchesBegan时,只有在它的顶视图具有触摸事件时才会调用它。因此移动视图将移动到将捕获事件的位置。

一个好的解决方案是重新设计你的布局,以便可以拖动每个子视图。

同时检查平移手势。这家伙有很好的教程: http://www.raywenderlich.com/6567/uigesturerecognizer-tutorial-in-ios-5-pinches-pans-and-more