我有一个320x144
名为的小型视图控制器SubViewController.h
,其中有一个 UITableView,其中包含 3 个单元格和一个部分。我已经使 tableView 不可滚动,并且还通过CALayer
.
在另一个名为 MainViewController.mi 的视图控制器中,已将SubViewController.h
其作为子视图添加到 thisMainViewController
中。使用UIPanGestureRecognizer
我已经成功地将 SubViewContoller 拖动到我想要的任何地方。
我用UIBarButtonItem
. 在子视图的 tableView 中选择一个单元格后,我通过一些动画让它从主视图中消失。
一切正常。
但是当我拖动子视图然后尝试选择一个单元格时,我必须点击该单元格两次。在第一次点击中,除了单元格变为蓝色(就像您在 tableView 中选择一个单元格时通常发生的那样),实际上什么都没有发生,但没有隐藏。如果我再次点击,它将隐藏。
在不拖动子视图的情况下,我可以通过一次触摸选择一个单元格,并且视图也会隐藏。
我已经编写了在子视图的didSelectRowAtIndexPath:
方法中隐藏子视图的代码。我已经检查过,当我在拖动子视图后第一次选择时不会调用此方法。在第二次点击或触摸时,它会被调用。如果用户再次移动子视图,则会出现同样的问题。
拖动后,子视图的某些属性肯定发生了变化,我无法弄清楚。