ios - UIView 以编程方式完成触摸

标签 ios uiview touchesmoved

问题是,我正在制作拖放式 iPad 游戏。 那样移动我的 View

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
    CGPoint pt = [[touches anyObject] locationInView:self.superview];
    self.center = CGPointMake(pt.x - _xOffset, pt.y - _yOffset);
}

但在某些时候我想停止拖动我的 View 并将其放到某个位置。 我不知道该怎么做。

最佳答案

当您最终定位 View 时,您可以尝试禁用触摸处理。可能最简单的方法是添加一个实例变量(如 BOOL draggingEnabled),您可以使用它来选择如何处理用户交互。开始新触摸时将标志设置为 YES,移动到最终位置时设置为 NO。在更改 View 中心之前检查 touchesMoved 中的值。

关于ios - UIView 以编程方式完成触摸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17770074/

相关文章:

iphone - 在单个 UIViewController 中有多个 UIView 的障碍

objective-c - iOS 中的画圈触摸移动了

Swift SpriteKit 3D Touch 和触摸移动

ios - 发布到 Facebook 的链接,包括应用程序 URL 方案 - iOS 6

javascript - PFUser 上的 AfterSave 检查是否在创建或更新

ios - UIViewcontroller 不会显示( Storyboard已删除)

ios - TouchesMoved 只移动一点点

ios - Kinvey vs StorageRoom vs Parse 其他 BaaS

ios - UIView 后面的 map 问题,类似于 FourSquare field 细节

iphone - "pointInside:"是如何工作的?