2013-08-12 3 views
2

Я использую следующий код, чтобы оживить внешний вид selectionMoreOptionViewUIView анимация не работает, чтобы изменить вид

[selectionMoreOptionView setFrame:CGRectMake(974, 56, 50, 0)]; 
[self.view insertSubview:selectionMoreOptionView aboveSubview:lightBoxView]; 
[lightBoxView setAlpha:0.0]; 

[UIView animateWithDuration:5.0 
         delay:0.0 
        options:UIViewAnimationOptionCurveLinear 
       animations:^{ 

        [lightBoxView setAlpha:0.5]; 
        [selectionMoreOptionView setFrame:CGRectMake(974, 56, 50, 100)]; 

       } completion:^(BOOL finished) { 
       }]; 

Но это не анимировать вместо этого он просто появляется сразу, без анимации. Что я делаю неправильно?

ответ

1

Анимация работает нормально проблема заключалась в том, что я имел две кнопки внутри вида, достаточно большой, чтобы охватить все точки зрения. Свойство представлений Clip Subviews не было проверено. Я думал, что когда родительский размер изменяет размер, он автоматически активирует свой дочерний элемент, но в некоторых случаях родительский элемент не обрезает его вложенные объекты. Спасибо всем за ваш ответ :)

+0

Если вы нашли решение, отметьте его как решившего. –

0

проверить свой

[selectionMoreOptionView setFrame: CGRectMake (974, 56, 50, 100)];

Я думаю, что XY-координаты не отображаются. Контроллер. Попробуйте привести его в область ViewController, так как X должен быть меньше 320 и y < 480, чтобы вы могли видеть свое мнение.

1

Просто попробуйте этот

[UIView animateWithDuration:.5 animations:^(void){ 

    [lightBoxView setAlpha:0.5]; 
    [selectionMoreOptionView setFrame:CGRectMake(974, 56, 50, 100)]; 

}]; 
Смежные вопросы