UIView анимация

Рейтинг: 0Ответов: 1Опубликовано: 05.12.2014

Всем привет.

Есть вид, который с помощью анимации выплывает из-за экрана. На нем кнопки, которые должны двигаться вместе с этим видом. Собственно, как сделать эти кнопки?

Вид анимирую следующим образом. Есть переменная draw, если она ==1, то вид убирается, если 0, то вид выплывает обратно на экран. При нажатии на определенную кнопку происходит:

[UIView beginAnimations: nil context: nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationDelay:0];
myView.frame=CGRectMake(menu_x,menu_y,menu_width,menu_height-150*draw);
[UIView commitAnimations];

draw=!draw

При анимации вида кнопки остаются на месте. А как их заставить двигаться вместе с видом?

Ответы

▲ 1

Где кнопки лежат? Если лежат на виде, то и двигаться с ним будут. А вообще UIView beginAnimations и его присные считаются устаревшими, хотя и не запрещенными аж с выхода 4.0, более правильно использовать блоки (группа методов animateWithDuration:animations:)

UPD:

Если кнопки лежат на виде, меняется размер вида и кнопки должны на нем переместиться то вам надо либо добавить в анимацию (перед [UIView commitAnimations];) еще изменение их положения, либо же добавить введенный в 6.0 механизм Auto Layout, который вполне способен задать для ваших кнопок относительное положение, например, привязав их к низу вида. Кроме того заходит ли вид под бар и просвечивает ли если заходит, по-моему, тоже настраивается, но на вскидку не помню как, а искать сейчас некогда