2017-05-23 28 views
1

我想在ios.Xamarin中以編程方式設置UILabel。編程式多行不在iOS中工作

我已經創建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; 

我試圖搜索谷歌和SO但沒有什麼是幫助我。

任何幫助將被讚賞。

回答

3

確保UILabel寬度沒有足夠的空間,因此需要「增長」。

而且使用SizeToFit()方法在你的UILabel,像:

label.Lines = 0; 
label.SizeToFit(); 
label.LineBreakMode = UILineBreakMode.WordWrap; 

希望這有助於!

+0

感謝@apineda'SizeToFit'正在爲我工​​作。 – Ironman

相關問題