CoreAnimation - довольно простая вещь, но:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:30];
MyImageView.frame = CGRectOffset(MyImageView.frame, 100, 0);
[UIView commitAnimations];
Я хочу медленно перемещать ImageView на 100 пикселей.Поэтому все значения позиционирования являются двойными, я ожидаю, что система компоновки позиционирует элементы с субпиксельной точностью.Когда я смотрю эту анимацию, я вижу, что ImageView «прыгает» по пикселям вместо плавного перемещения.Любые идеи, чтобы прийти к реальной субпиксельной позиции?Я также попытался установить положение с помощью таймера и пересчитать значения кадра, но тот же эффект.
Обновление: в другой части моего приложения я использую акселерометр, чтобы обновить положение ImageView, и делаюв основном рассчитайте размер рекламного места для графического объекта и затем выполните:
MyImageView.frame = newCGRect;
Я получил около 60 обновлений / с от акселерометра и добавил фильтр низких частот из примера акселерометра от Apple.идеальное позиционирование?!?!
Почему этого не происходит с CoreAnimation?
Спасибо за любую помощь.