У меня есть кнопка (на самом деле четыре из них) в определенной позиции, которую я хочу вращать и переводить одновременно, поэтому я решил использовать CGAffineTransformMake и предоставить матрицу преобразования.CGAffineTransformMake меняет свой объект перед преобразованием
Однако я заметил, что, если я хочу перевести x = -100, например, кнопка сначала будет мгновенно сдвинута x = +200, а затем будет анимировать ее преобразование в x = -100.
Есть ли способ сделать это без этого перехода в противоположном направлении?
CGAffineTransform transform = CGAffineTransformMake(-1, 0, 0, -1, -100, 0); // Spins 180° and translates
[UIView beginAnimations:@"Show Menu" context:nil];
[UIView setAnimationDuration:2.4];
_menuButton1.transform = transform;
[_menuButton1 setAlpha:1.0];
[UIView commitAnimations];
Сначала используйте метод блока анимации UIView. Во-вторых, используете ли вы AutoLayout в своем представлении? – Fogmeister