UIView beginAnimations с подпредставлениями

import time
time.sleep(5)   # Delays for 5 seconds. You can also use a float value.

Вот другой пример, куда что-то выполняется приблизительно однажды минута:

import time
while True:
    print("This prints once a minute.")
    time.sleep(60) # Delay for 1 minute (60 seconds).
9
задан John Lane 15 May 2009 в 11:20
поделиться

1 ответ

Я просто столкнулся с той же проблемой, и решение оказалось на удивление простым. В то время как изменение размера кадра влияет только на текущее представление, а не на подпредставления (как вы заметили), свойство преобразования применяется также и к подпредставлениям.

I ' m пытается сделать обратное тому, что вы делаете (иметь подвид, который при отображении кажется «опускается» на верхнюю часть существующего вида, а не масштабирует его от центра). У меня работает этот код:

self.transform = CGAffineTransformMakeScale(2,2);
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.25];
self.transform = CGAffineTransformMakeScale(1,1);
self.alpha = 1.0;
[UIView commitAnimations];

Попробуйте установить для self.transform значение CGAffineTransformMakeScale (0,0) перед началом анимации и вернуть его в (1,1) перед фиксацией. Не изменяйте кадр вообще - оставьте его такого размера, который должен иметь вид после завершения анимации.

15
ответ дан 4 December 2019 в 13:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: