Ответ 1
Убедитесь, что ваши метки не настроены на автоматическое изменение размера. В IB он называется "Autoshrink" и находится рядом с настройкой шрифта. Программно он называется adjustsFontSizeToFitWidth
.
Я не могу изменить размер шрифта UILabel со следующим кодом:
itemTitle.font = [UIFont systemFontOfSize:25];
По мере того, как я увеличиваю число 25 до чего-то большего, он, кажется, добавляет только верхний край метки, что, следовательно, так сильно толкает текст, что текст обрезается внизу или полностью переполняется.
У меня есть другая UILabel в другом месте с systemFontOfSize 25, и она намного меньше, чем текст itemTitle. Что происходит? Разве 25 не должно быть абсолютной величиной?
Я так запутался в том, как программно менять размер шрифта uilabels.
Убедитесь, что ваши метки не настроены на автоматическое изменение размера. В IB он называется "Autoshrink" и находится рядом с настройкой шрифта. Программно он называется adjustsFontSizeToFitWidth
.
Я изменил UILabel, выполнив следующий код:
label.font=[label.font fontWithSize:25];
Попробуйте это и посмотрите, работает ли это в вашем случае или нет.
[label setFont:[UIFont systemFontOfSize:9]];
это работает для меня.
timedisplayLabel= [[UILabel alloc]initWithFrame:CGRectMake(70, 194, 180, 60)];
[timedisplayLabel setTextAlignment:NSTextAlignmentLeft];
[timedisplayLabel setBackgroundColor:[UIColor clearColor]];
[timedisplayLabel setAdjustsFontSizeToFitWidth:YES];
[timedisplayLabel setTextColor:[UIColor blackColor]];
[timedisplayLabel setUserInteractionEnabled:NO];
[timedisplayLabel setFont:[UIFont fontWithName:@"digital-7" size:60]];
timedisplayLabel.layer.shadowColor =[[UIColor whiteColor ]CGColor ];
timedisplayLabel.layer.shadowOffset=(CGSizeMake(0, 0));
timedisplayLabel.layer.shadowOpacity=1;
timedisplayLabel.layer.shadowRadius=3.0;
timedisplayLabel.layer.masksToBounds=NO;
timedisplayLabel.shadowColor=[UIColor darkGrayColor];
timedisplayLabel.shadowOffset=CGSizeMake(0, 2);
очень простой, но эффективный способ пропорционально настроить размер текста меток: -
label.font=[UIFont fontWithName:@"Chalkduster" size:36];
: -)
Это сработало для меня:
sequencerPlayLabel.font = [UIFont fontWithName:kTypeFont size:kTypeFontSize];
-богатой
Это работало для меня в
Swift 3
label.font = label.font.fontWithSize(40.0)
Swift 4
label.font = label.font.withSize(40.0)
Для быстрого 3.1, если вы хотите изменить размер шрифта для метки:
let myLabel : UILabel = ...
myLabel.font = myLabel.font.withSize(25)
Ответы выше очень помогли.
Вот версия Swift.
@IBOutlet weak var priceLabel: UILabel!
*.... lines of code later*
self.priceLabel.font = self.priceLabel.font.fontWithSize(22)
Попытайтесь изменить размер и ширину фрейма метки, чтобы текст не вырезался.
[label setframe:CGRect(x,y,widht,height)];