标签中的上标文本



是否可以在 Xamarin 窗体中上标标签?在HTML中,我会使用<sup>标签。我想上标文本"min"。所以我可以让文本"5分钟"加上"min"部分上标。

> 将LabelTextType属性设置为Html

例如,要生成:x2+ y

在 XAML 中:

<Label Text="x&lt;sup&gt;&lt;small&gt;2&lt;/small&gt;&lt;/sup&gt; + y" TextType="Html"/>

<Label TextType="Html">
<![CDATA[
x<sup><small>2</small></sup> + y
]]>
</Label>

在 C# 中:

MyStackLayout.Children.Add(
new Label {
TextType=TextType.Html,
Text="x<sup><small>2</small></sup> + y"
});

请注意,<小>标记是可选的。

有关详细信息,请参阅Label文档的"显示 HTML"部分:Xamarin.Forms 标签:显示 HTML

感谢 Jason 使用FormattedText属性的想法。但是由于它不支持文本的绑定,我将 2 个标签放在一个StackLayout中,上标文本的 mirco 字体大小:

<StackLayout Orientation="Horizontal" Spacing="0">
<Label Text="{Binding Minutes}">
<Label.FontFamily>
<OnPlatform x:TypeArguments="x:String">
<On Platform="Android" Value="fonts/chsans/MyFont-Bold.ttf#MyFont-Bold" />
</OnPlatform>
</Label.FontFamily>
</Label>
<Label Text="min" FontSize="Micro">
<Label.FontFamily>
<OnPlatform x:TypeArguments="x:String">
<On Platform="Android" Value="fonts/chsans/MyFont-Regular.ttf#MyFont-Regular" />
</OnPlatform>
</Label.FontFamily>
</Label>
</StackLayout>

最新更新