首页 > 解决方案 > 标签跨度和斜体字体属性的奇怪行为

问题描述

尝试按照 Xamarin 教程获取标签视图: 标签教程

在跨度标签中应用斜体字体属性时,同时将标签文本的大小设置为标签标签中的任何值。文本大小未应用于具有斜体属性的跨度中的文本。

<StackLayout Margin="20,35,20,25">
    <Label FontSize="50" TextColor="Blue">
        <Label.FormattedText>
            <FormattedString>
                <Span Text="underlined text" TextDecorations="Underline" />
                <Span Text=", emphasized" FontAttributes="Italic" />
            </FormattedString>
        </Label.FormattedText>
    </Label>
</StackLayout>

安卓模拟器的输出

标签: htmlxamarinlabelitalic

解决方案


我还发现,当具有LabelItalic属性的FontSizespan不起作用时。不过,我为此找到了一个WorkAround,你可以通过设置这个Span来解决它。FontSize

看看下面的代码:

<StackLayout Margin="20,35,20,25">
    <Label FontSize="50" TextColor="Blue">
        <Label.FormattedText>
            <FormattedString>
                <Span Text="underlined text" TextDecorations="Underline" />
                <Span Text=", emphasized" FontSize="50" FontAttributes="Italic" />
            </FormattedString>
        </Label.FormattedText>
    </Label>
</StackLayout>

效果:

在此处输入图像描述

我认为 Xamarin Forms 的下一个版本会尽快修复它。


推荐阅读