我试着通过代码添加一个UILabel,这是有效的,但不是预期的。
使用以下代码,我可以看到标签,但标签的高度不正确,如您在所附屏幕中看到的。我希望uilabel的大小与字体大小一致。
当然,我可以简单地将UILabels放大到合适的高度。但我不认为这是最好的做法。
如何根据字体大小调整UILabel的大小?

var uilabel1=UILabel();
uilabel1.frame=CGRectMake(0, drawy, screenwidth, ititlesize);
uilabel1.text=sTextViewOptionsTitle;
uilabel1.font = UIFont(name: uilabel1.font.fontName, size: 28);
self.view.addSubview(uilabel1);
var lastelementheigth=uilabel1.frame.height;

swift - 仅通过代码以编程方式添加UILabel。尺码? ( swift )-LMLPHP
使用sizeToFit()更新解决方案
感谢您对sizeToFit()的回答。这是用一些额外的代码来定位控件的技巧。
更新代码:
  var uilabel2=UILabel();
    //uilabel2.frame=CGRectMake(0, drawy, screenwidth/2, DropdownHeigth);
    uilabel2.text=sTextSizeTextViewer;
    uilabel2.font = UIFont(name: uilabel2.font.fontName, size: iFontsize_Option);
    uilabel2.sizeToFit();
    uilabel2.frame.origin = CGPoint(x: 0, y: drawy);

    self.view.addSubview(uilabel2);
    lastelementheigth=uilabel2.frame.height;

最佳答案

您可能只需要致电-sizeToFit。这将根据内容将标签大小更改为“首选”大小。如果需要,可以重新定位原点或中心。

10-07 19:28
查看更多