xamarin - 如何在 xamarin 表单中的单个标签上使用不同的字体大小
问题描述
我遇到了不同的结果,但不是很好。我尝试使用 split() 进行分离,然后设置字体大小以将它们重新组合在一起。这是一个漫长的过程,我想做得更好。请任何知道如何解决这个问题的人都应该帮助我。
解决方案
您可以使用格式化字符串。
对于固定数量的文本块 Xaml
<Label>
<Label.FormattedText>
<FormattedString>
<Span Text="{Binding chunk1}" TextColor="Green" FontSize="10"/>
<Span Text="{Binding chunk2}" TextColor="Green" FontSize="15"/>
<Span Text="{Binding chunk3}" TextColor="Red" FontSize="10"/>
</FormattedString>
</Label.FormattedText>
</Label>
如果您的文本块数不固定。
<Label FormattedText="{Binding TextChunks}" />
视图模型
public FormattedString TextChunks
{
get
{
return new FormattedString
{
//You can add a loop here any many as the number of text chunks
Spans =
{
new Span { Text = "chunk1", TextColor=Color.Green, FontSize = 10 },
new Span { Text = "chunk2", TextColor=Color.Red, FontSize = 15 },
new Span { Text = "chunk3", TextColor=Color.Green, FontSize = 10},
new Span { Text = "chunk4", TextColor=Color.Red , FontSize = 15},
new Span { Text = "chunk5", TextColor=Color.Green, FontSize = 18},
}
}
}
}
推荐阅读
- python - 我正在尝试使用 scipy.minimize 解决具有约束和界限的最大化问题
- json.net - 移动到新程序集后 CosmosDB 无法反序列化对象
- matplotlib - 如何在cartopy的地图上绘制填充多边形
- c - 在 do while 循环中省略了 scanf
- c++ - 避免在 EC2 实例中重新编译 C/C++ 应用程序
- wso2 - 集群 WSO2 EI ESB 配置文件:对这些数据库中的数据库创建和表创建有一些疑问?
- c# - 3d 文本上的 transform.LookAt 正在向后显示文本
- java - java.sql.Date错误如何避免呢?将日期插入我的数据库
- python - 我在反向欧拉中遇到双标量溢出和双标量错误中遇到的无效值
- c++ - 使用另一个四元数旋转四元数旋转游戏对象时出现问题