以编程方式Multiline不在iOS中工作

时间:2017-05-23 05:45:13

标签: ios xamarin xamarin.ios uilabel multiline

我想在ios.Xamarin中以编程方式设置UILabel。

我已经以这种方式创建了UILabel并将其添加到我的视图下面是代码。

代码:

public override void ViewDidLoad()
        {
            base.ViewDidLoad();


            var label = new UILabel();
            label.Frame = new CoreGraphics.CGRect(10, 10, secondContainer.Frame.Size.Width - 20, 20);
            label.Text = "First Label First Label First Label First Label First Label First Label";
            label.Lines = 0;
            label.LineBreakMode = UILineBreakMode.WordWrap;
            secondContainer.AddSubview(label);
            secondContainer.AddConstraint(NSLayoutConstraint.Create(label, NSLayoutAttribute.Height, NSLayoutRelation.GreaterThanOrEqual, null, NSLayoutAttribute.NoAttribute, 0, 20));

            secondContainerHeight.Constant = label.Frame.Size.Height + 20;
        }

但我的标签不超过一行。

注意:

  

这2个属性效果不佳

 label.Lines = 0;
 label.LineBreakMode = UILineBreakMode.WordWrap;

我曾尝试在谷歌和搜索上搜索,但没有任何帮助我。

任何帮助都会得到赞赏。

1 个答案:

答案 0 :(得分:3)

确保UILabel宽度没有足够的空间,因此需要“增长”。

也可以在UILabel中使用Toolbar toolbar = findViewById(R.id.toolbar); 方法,例如:

SizeToFit()

希望这有帮助!