添加和编辑动态UILabel目标C.

时间:2011-11-14 15:05:36

标签: iphone objective-c dynamic uilabel

嘿我在向我的uiview子类添加动态标签时遇到了一些困难,并让它适当地缩放。这是我目前使用的代码:

- (id)initWithFrame:(CGRect)frame
{
   frame = CGRectMake(0, 0, 100, 100);
   CGRect lblFrame = CGRectMake(0, 0, 100,100);
   self = [super initWithFrame:frame];
   if (self) {
    // Initialization code
    testLbl = [[UILabel alloc] initWithFrame:lblFrame];
    testLbl.backgroundColor = [UIColor clearColor];
    testLbl.textColor = [UIColor darkGrayColor];
    testLbl.textAlignment = UITextAlignmentCenter;
    [testLbl setText:@"T"];
    testLbl.numberOfLines = 1;
    testLbl.minimumFontSize = 50;
    testLbl.adjustsFontSizeToFitWidth = YES;
    [self addSubview:testLbl];
    }
return self;
}

这会将标签添加到uiview,但其文本不会调整。我此刻已经尝试了一切。有没有人有任何想法?

2 个答案:

答案 0 :(得分:2)

根据this answer,如果文本已经与当前字体匹配在标签内,则忽略.minimumFontSize属性。尝试显式设置标签字体,如下所示:

testLabel.font = [UIFont systemFontOfSize:50];

答案 1 :(得分:1)

您正在设置

testLbl.minimumFontSize = 50;

这是一个非常大的字体(一个字母可能不适合),所以它可能会尝试调整,但由于您的最小字体大小,实际上无法显示任何内容。尝试像

这样的东西
testLbl.minimumFontSize = 14;

如果minimumFontSize超过实际指定的字体大小,我不知道行为是什么,也许只是放弃...