我的屏幕上显示了一个图像,我希望能够选择图像的任何部分并获得该点的(x,y)坐标,并显示带有我触摸的点的标签和坐标就在旁边。
我的问题是这个。我可以适当地触摸和更改坐标文本,但是在第一次触摸时它不会移动标签的实际位置。如果我在完全相同的位置触摸两次,它确实移动到适当的位置。如果我只触摸一次,它会将它移回原来的位置。
以下是我用于触摸的代码块:
- (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:nil];
_coordinatesLabel.center = CGPointMake(location.x + 83, location.y - 4);
_coordinatesLabel.text = [NSString stringWithFormat:@"• (%.2f,%.2f)", location.x/32, (768-location.y)/32];
}
修改
- (void) touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:nil];
_coordinatesLabel.translatesAutoresizingMaskIntoConstraints = true;
_coordinatesLabel.center = CGPointMake(location.x + 83, location.y - 4);
_coordinatesLabel.text = [NSString stringWithFormat:@"• (%.2f,%.2f)", location.x/32, (768-location.y)/32];
}
我添加了中间代码,它完美无缺。谢谢你的帮助。