我有一个名为SubViewController.h
的小型320x144
视图控制器,其中有一个UITableView,其中包含3个单元格的单元格。我已经使tableView不可滚动,并且还通过CALayer
的优雅将一些阴影效果放在tableView后面。在使用UIPanGestureRecognizer拖动后,必须点击两次以选择UITableViewCell
在另一个名为MainViewController.m的视图控制器中,我添加了SubViewController.h
作为子视图MainViewController
。使用UIPanGestureRecognizer
我已经成功地能够拖动SubViewContoller任何地方我想要的。
我使这个子视图可见与UIBarButtonItem
。在子视图的tableView中选择一个单元格后,我使用某些动画从主视图中消失。
一切工作正常。
但是,当我拖动子视图,然后尝试选择一个单元我必须点击两次单元格。在第一次点击时,除了单元格变为蓝色之外,没有任何实际发生(就像在桌面视图中选择单元格时正常发生的那样),但不会隐藏。如果我再次点击,则会隐藏。
没有拖动子视图,我可以选择一个单一的触摸单元格,也视图隐藏。
我已经编写了子视图的didSelectRowAtIndexPath:
方法隐藏子视图的代码。并且我已经检查过这种方法,当我第一次选择拖动子视图后不会调用这个方法。在第二次敲击或触摸它时会被调用。再次,如果用户再次移动子视图,则会出现同样的问题。
当然,子视图的某些属性在拖动后发生了变化,我无法弄清楚。
这不是什么我期望。我相信我必须在UIGestureRecocgnizerStateEnded时写点东西。 –