【问题标题】:Auto-scaling label fontsize in XamarinXamarin 中的自动缩放标签字体大小
【发布时间】:2019-04-06 15:55:01
【问题描述】:
        <Label x:Name="mainLabel" 
           Grid.Row="0" 
           Grid.Column="0" 
           FontSize="50" 
           Grid.ColumnSpan="3"
           Grid.RowSpan="2"
           VerticalOptions="CenterAndExpand" 
           HorizontalOptions="CenterAndExpand" />

我正在制作一个电话拨号界面,并且我有一个输出按下的数字的标签。

问题:我怎样才能使标签的字体大小根据输入的数字减小和增加,以便它适合标签?

我尝试谷歌搜索一整天,但所有样本都已过时。

我正在使用最新版本的 Xamarin 和 android API 27。

【问题讨论】:

    标签: c# xamarin xamarin.android autoscaling


    【解决方案1】:

    您可以拥有一个 FontSize,并为 Label 设置绑定属性。

    例如:

    <Label x:Name="mainLabel" 
               Grid.Row="0" 
               Grid.Column="0" 
               FontSize= "{Binding LabelFont}"
               Grid.ColumnSpan="3"
               Grid.RowSpan="2"
               VerticalOptions="CenterAndExpand" 
               HorizontalOptions="CenterAndExpand" />
    

    您可以为标签触发 TextChanged 事件,您可以在该事件中检查标签文本的长度是否超过值更改为所需大小,并且长度也小于值。

    标签的TextChanged事件可以按照link中提到的那样实现

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-02
      • 2021-01-07
      • 2021-10-04
      • 2012-09-12
      相关资源
      最近更新 更多