我正在编写一个Xamarin.Forms社交网络应用程序,我试图这样做,当我在一行上有多个标签时,他们占用了他们需要的空间,然后是下一个标签的文本等等。
这是我尝试过的代码
StackLayout bodyLayout = new StackLayout
{
Orientation = StackOrientation.Horizontal, HorizontalOptions = LayoutOptions.Fill
};
Label word1 = new Label() { Text = "hey ppl you should follow" };
bodyLayout.Children.Add(word1);
Label word2 = new Label() { Text = "@SOCIALNETWORK" };
bodyLayout.Children.Add(word2);
Label word3 = new Label() { Text = "they are cool" };
bodyLayout.Children.Add(word3);
我希望将其打印为
嘿,你应该关注@SOCIALNETWORK,他们很酷
当它到达屏幕的末尾时,它会进入下一行
答案 0 :(得分:1)
尝试使用Label.FormattedText和Span。有一些限制(最值得注意的是,Span上没有可绑定的属性),但应该适用于您想要的内容:
Label line = new Label()
{
FormattedText = new FormattedString()
{
Spans =
{
new Span() { Text = "hey ppl you should follow" },
new Span() { Text = "@SOCIALNETWORK" },
new Span() { Text = "they are cool" },
}
}
}