添加子视图后未收到touches已删除/已移动/已取消
问题描述:
标题或多或少地说明了一切。为了回应touchesBegan
事件,我的UIViewController
重新上色并添加了一些子视图。它不会收到touchesEnded
。我猜是因为添加的子视图会以某种方式拦截事件。我试图在子视图上调用resignFirstResponder
无济于事。添加子视图后未收到touches已删除/已移动/已取消
当我不添加子视图和触摸事件被正常调用时,代码工作正常。
任何想法?
谢谢
编辑:细节和我如何修复它。
基本上我有一个子视图的主视图,当我触摸子视图时,事件会传递到主视图,但是,在这个事件中,我删除了子视图并在它们的位置添加了新子视图。触摸起源于不再存在的子视图意味着触摸的其余部分丢失。
我解决了这个问题通过重写则hitTest:withEvent在我的母版视图,停止触摸有朝一日能兑子视图
答
你将需要通过从子视图触摸到使用像这样的测试上海华:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesBegan:touches withEvent:event];
}
任何代码? +++++ – kennytm 2010-03-22 14:20:10
嗯,代码是相当复杂的,但我编写了一个最简单的例子来张贴在这里,它的工作正常...所以+1在正确的方向微调...... ........会发布时,我已经找出了差异 – Sam 2010-03-22 15:48:56