如何将长文本放入UITextView或UILabel中

时间:2016-07-16 02:09:12

标签: c# ios xamarin xamarin.ios

我正在使用xamarin开发一个ios应用程序。 我需要将长文本放入内容(UILabel或UITextView)。 这是我使用的代码:

var descStrLabel = new UITextView(new CGRect(0, 250, w, 550));
        descStrLabel.BackgroundColor = UIColor.Black;
        descStrLabel.Font = UIFont.SystemFontOfSize(10.0f);
        descStrLabel.TextAlignment = UITextAlignment.Center;
        descStrLabel.TextColor = UIColor.LightGray;
        descStrLabel.Text = @"HERE THE LONG TEXT...";
        //descStrLabel.Lines = 0;
        descStrLabel.AutoresizingMask = UIViewAutoresizing.FlexibleWidth;
        View.Add(unified);
        View.Add(subtitle);
        View.Add(descStrLabel);

当我调试应用程序时,文本的最后部分缺失...

也许我需要在运行时设置宽度......

提前感谢您的帮助

1 个答案:

答案 0 :(得分:2)

我真的不知道你想如何“适应”文字。如果您想在一行中显示所有文字,请尝试拨打SizeToFit()

desc.SizeToFit();

SizeToFit()的文档:

  

移动并调整UIView的大小,使其紧紧包围其UIView.Subviews

如果您希望UITextView换行,那么您不需要做任何事情!默认情况下启用换行。如果不适合您,请尝试设置LineBreakMode

desc.TextContainer.LineBreakMode = UILineBreakMode.WordWrap;

WordWrap的文档:

  

包装不合适的第一个单词。