Как увеличить динамично UILabel (маркировка и размер шрифта)?

Я в настоящее время работаю над проектом iPhone. Я хочу увеличить динамично UILabel в Objective C как это:

сопроводительный текст http://img268.imageshack.us/img268/9683/bildschirmfoto20100323u.png

Как это возможно? Я думал, что должен сделать это с CoreAnimation, но я не сделал работавший. Вот код, который я попробовал:

UILabel * fooL = //[…]
fooL.frame = CGRectMake(fooL.frame.origin.x, fooL.frame.origin.y, fooL.frame.size.width, fooL.frame.size.height);   
fooL.font = [UIFont fontWithName:@"Helvetica" size:80];
[UIView beginAnimations:nil context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:0.5];
[UIView setAnimationBeginsFromCurrentState:YES];
fooL.font = [UIFont fontWithName:@"Helvetica" size:144]; //bigger size
fooL.frame = CGRectMake(20 , 44, 728, 167); //bigger frame
[UIView commitAnimations];

Проблема с этим кодом состоит в том, что он не изменяет fontsize динамично.

7
задан WrightsCS 16 December 2011 в 21:00
поделиться

1 ответ

Попробуйте этот метод:

+ (void)setAnimationTransition:(UIViewAnimationTransition)transition 
                       forView:(UIView *)view 
                         cache:(BOOL)cache

Параметры: переход Переход, который нужно применить к представлению. Возможные значения описаны в UIViewAnimationTransition.

вид Вид, к которому нужно применить переход.

кэш Если ДА, то изображения вида до и после рендерятся один раз и используются для создания кадров в анимации. Кэширование может повысить производительность, но если вы установите этот параметр в YES, вы не должны обновлять вид или его вложенные представления во время перехода. Обновление представления и его подпрограмм может нарушить поведение кэширования и привести к тому, что содержимое представления будет отображаться неправильно (или в неправильном месте) во время анимации. Для обновления представления необходимо дождаться окончания перехода.

Если НЕТ, представление и его содержимое должны обновляться для каждого кадра анимации перехода, что может заметно повлиять на частоту кадров.

Обсуждение Если вы хотите изменить внешний вид представления во время перехода - например, перейти от одного представления к другому - используйте представление-контейнер, экземпляр UIView, следующим образом:

Начните блок анимации. Установите переход на контейнерном представлении. Удалите вложенный вид из контейнерного представления. Добавьте новое вложенное представление в контейнерное представление. Зафиксируйте блок анимации.

0
ответ дан 7 December 2019 в 14:30
поделиться
Другие вопросы по тегам:

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