我的iPad应用程序中的视图表现得好像当用户在该视图中启动此类手势时,它们阻止其超级视图的手势识别器发射。触摸子视图时不应该UIRecognizers触发?
这是预期吗? 我该如何去除屏蔽行为? 调试手势识别器的最佳做法是什么?
在更多的细节:
我的应用程序的主“画布”视图,让用户添加形状将其与“长双击”。我将这种手势的手势识别器附加到主视图上。这非常有效:主视图被调用,并通过向主视图添加一个形状来作出反应。
形状作为主视图的子视图实现。当用户在主视图中长按双击时,我的代码会创建一个形状子视图,并将其添加到主视图。形状视图可以使用长单点击识别器移动。所以我还附加了一个手势识别器,用于每个形状视图的长单拍。这非常有效:形状视图被调用并让用户在画布中移动它。但是,当用户在形状视图中长时间双击时,什么都不会发生:形状视图不会被调用,这是预期的,因为它没有用于长双击的姿势识别器。但主要观点也不被称为。我曾经想过,由于手势没有被形状视图所识别,那么它会在响应者链中传播到主视图。但是这并没有发生。
我的意图是让用户将重叠形状添加到主视图,以便在形状上长双击也会将新形状添加到主视图。
我可能错过了什么?
我当然可以添加一个长双击识别器来塑造视图,并从那里将手势转发到主视图或直接处理手势,方式与我在主视图中所做的相似。
但这听起来很浪费,更重要的是,我想了解这种行为。
感谢您的任何建议。
当你长时间双击一个子视图时,它会触发单一长按? –
是的,子视野单龙水火 –