我有2个标签需要使用不同的字体来制作单个标签
“我的公司(c)”(文案符号)。 “My Company”将是大字体,而“(c)”将是小字体。我无法让它们显示为 1 个单一标签。似乎存在间距问题。我尝试了以下方法。
<StackLayout Grid.Row="1" Orientation="Horizontal">
<Label
x:Name="lbCo"
Text="My Company"
Style="{DynamicResource LargeLabel}"/>
<Label
x:Name="lbcopywrite"
Text="©"
Margin="0,-7,0,0"
Style="{DynamicResource SmallLabel}"/>
</StackLayout>
但它看起来像“ My Company (spaces) (c) ”
任何想法如何使它看起来像“我的公司(c)”,总是在同一条线上并在一起?
最佳答案
还有另一种方法,但您不能直接为文本指定样式,但您可以选择多种字体选项。不过,您仍然可以为主标签设置样式。
<Label>
<Label.FormattedText>
<FormattedString>
<Span Text="Company" FontAttributes="Bold"/>
<Span Text=" ©" FontSize="Micro" />
</FormattedString>
</Label.FormattedText>
</Label>
如果你想要绑定(bind),你需要创建一个 Converter,它返回一个 FormattedString,并分配给 FormattedText。如果您想以不同的样式重用它,您可以创建一个带参数的转换器。
<Label FormattedText="{Binding Text, Converter={StaticResource FormattedStringConverter}}" />
关于c# - Xamarin (XAML) 如何并排放置 2 个标签,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44190780/