我想动态调整UILabel的文本大小。 UILabel的框架将动态更改。每当更改UILabel的Frame时,字体大小都应该适合框架。
我尝试了以下代码,但没有效果。
<input type="checkbox" name="IsValid" />
<input type="button" id="abc" value="click"/>
<script>
$('#abc').click(function(){
$("input[name=IsValid]").prop("checked", true);
});
</script>
最后我找到了解决方案。
这是我的计算
label.AdjustsFontSizeToFitWidth = true
答案 0 :(得分:0)
您可以看到AdjustsFontSizeToFitWidth
定义here
正如文档所说,roder中的大小将减少以适应标签的边界矩形,因此字体不会随着标签的框架动态变大,但是你可以设置非常大的字体。开始达到你的要求,看看我的测试结果。
UILabel label;
public override void ViewDidLoad()
{
base.ViewDidLoad();
label = new UILabel(frame: new CGRect(0, 100, 100, 100));
label.BackgroundColor = UIColor.Red;
label.TextColor = UIColor.White;
label.Font = UIFont.SystemFontOfSize(1000);
label.AdjustsFontSizeToFitWidth = true;
label.LineBreakMode = UILineBreakMode.Clip;
label.BaselineAdjustment = UIBaselineAdjustment.AlignCenters;
label.Text = "label";
View.AddSubview(label);
}
partial void ButtonIncrease(UIButton sender)
{
CGRect rect = label.Frame;
rect.Width = 300;
rect.Height = 300;
label.Frame = rect;
}
partial void ButtonDecrease(UIButton sender)
{
CGRect rect = label.Frame;
rect.Width = 100;
rect.Height = 100;
label.Frame = rect;
}