Мое приложение прост: я хочу переместить небольшое изображение uiimageview вокруг iPad с помощью акселерометра (теперь Core Motion). Таким образом, я могу перемещать uiimageview с помощью акселерометра, но у меня возникают проблемы с созданием рабочих границ в ландшафтном режиме. Итак, вот мой код. Проблема в том, что uiimageview имеет тенденцию придерживаться границ, а некоторые границы не совсем находятся на краю обзора. Вот мой код, любая помощь с благодарностью:iphone - CGMotion move UIImageView в ландшафтном режиме
- (void)startMyMotionDetect
{
__block float stepMoveFactor = 15;
[self.motionManager
startAccelerometerUpdatesToQueue:[[NSOperationQueue alloc] init]
withHandler:^(CMAccelerometerData *data, NSError *error)
{
dispatch_async(dispatch_get_main_queue(),
^{
CGRect rect = self.sumbarine.frame;
float movetoY = rect.origin.x + (data.acceleration.x * stepMoveFactor);
float maxY = self.view.frame.size.width-rect.size.width;
float movetoX = (rect.origin.y + rect.size.height)
- (data.acceleration.y * stepMoveFactor);
float maxX = self.view.frame.size.height;
if (movetoX >0 && movetoX < maxX) {
rect.origin.x += (data.acceleration.y * stepMoveFactor);
};
if (movetoY > 0 && movetoY < maxY) {
rect.origin.y += (data.acceleration.x * stepMoveFactor);
};
[UIView animateWithDuration:0 delay:0
options:UIViewAnimationOptionCurveEaseIn
animations:
^{
self.sumbarine.frame = rect;
}
completion:nil
];
}
);
}
];
}