【发布时间】:2014-07-17 03:04:40
【问题描述】:
在 iOS 中,当我添加 childviewcontroller,然后将其删除 - 所有重叠的手势都已被禁用。
例如,父视图控制器具有“longtap”手势,子视图控制器具有“longtap”手势。
父视图长按手势有效。
然后我添加childviewcontroller 并且VCs longtap 手势有效。
然后我调用 removeFromParentViewController
用于响应长按手势的原始视图控制器视图已禁用其手势。
(我可以循环浏览所有手势并再次“启用”它们 - 我的问题是为什么当我添加然后删除 childviewcontroller 时 longtap 手势会被禁用 - 我正在做所有标准,即。
[_parentVC addChildViewController:alertVC];
[_parentVC willMoveToParentViewController:alertVC];
[_parentVC.view addSubview:alertVC.view];
然后
[alertVC.view removeFromSuperview];
[alertVC removeFromParentViewController];
[alertVC willMoveToParentViewController:_parentVC];
【问题讨论】:
-
你在哪里定义你的手势??
-
每个视图控制器都有自己的带有 UILongPressGestureRecognizer 的 nib,每个视图控制器的 .h 文件都有一个连接到它们的手势的 IBAction。 AlertViewController 的签名是 -(IBAction) handleLongPressToCloseAlertView:(UITapGestureRecognizer*) 识别器;并且父视图控制器的签名是: - (IBAction)handleLongPress:(UILongPressGestureRecognizer*) 识别器;
标签: ios uiviewcontroller childviewcontroller