我有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/

10-17 01:59