Анимация UIView frame.origin

Я видел в Интернете несколько примеров кода, относящихся к простому втягиванию или выдвижению UIView. Имеет смысл начать UIView с его координатами за пределами экрана (отрицательными), а затем параметр анимации просто изменяет кадр UIView. Итак, первый вопрос: обеспечивает ли это наиболее очевидный метод?

Однако в моем коде происхождение кадра не может быть назначено. Я получаю ошибку Xcode для этой строки, которая говорит об этом.

Я просто хочу сделать что-то вроде этого внутри анимации:

self.viewPop.frame.origin.y=100;

Любая помощь приветствуется.


ОБНОВЛЕНИЕ

Я решил эту проблему. Метод, который я обнаружил, состоит в том, чтобы назначить фрейм вашего представления другому CGRect и внести изменения в этот CGRect, а затем назначить его обратно фрейму:

CGRect frame = self.moveView.frame;
frame.origin.x = newvalue.


[UIView animateWithDuration:2.0 animations:^{ 

    self.moveView.frame = frame;

}];
10
задан Bruno Bieri 10 July 2019 в 13:01
поделиться