Giả sử bạn có một UIView
cảnh với một hình nền và nhiều hình nền vehicles
, bạn có thể xác định mỗi phương tiện mới là một UIButton
(UIImageView cũng có thể hoạt động):
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];
[button addTarget:self action:@selector(imageTouch:withEvent:) forControlEvents:UIControlEventTouchDown];
[button addTarget:self action:@selector(imageMoved:withEvent:) forControlEvents:UIControlEventTouchDragInside];
[button setImage:[UIImage imageNamed:@"vehicle.png"] forState:UIControlStateNormal];
[self.view addSubview:button];
Sau đó, bạn có thể di chuyển chiếc xe đến bất cứ nơi nào bạn muốn, bằng cách phản hồi UIControlEventTouchDragInside
sự kiện, ví dụ:
- (IBAction) imageMoved:(id) sender withEvent:(UIEvent *) event
{
CGPoint point = [[[event allTouches] anyObject] locationInView:self.view];
UIControl *control = sender;
control.center = point;
}
Phương tiện cá nhân dễ dàng hơn rất nhiều để xử lý các lực kéo của chính nó, so với việc quản lý toàn bộ hiện trường.