【问题标题】:How to set dynamic font sizes for Xamarin portable project如何为 Xamarin 便携式项目设置动态字体大小
【发布时间】:2017-01-05 08:25:47
【问题描述】:

我是 Xamarin 环境的初学者。

我已经使用 Xamarin 表单开发了便携式项目,它在多平台(Android、IOS、windows)中运行良好

我的问题:

在 android 中它有多个设备,因此它们为多设备管理维护不同维度的文件夹结构。

例如:

  • 价值观
  • values-sw320dp
  • 值-sw600dp
  • 值-sw720dp

我的 Xamarin 表单代码:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
         xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
         xmlns:local="clr-namespace:MultiDeviceDemo"
         x:Class="MultiDeviceDemo.MainPage">

<!--currently fontsize hardcoded.. How to replace this to dyanamic-->
<Label Text="Welcome to Xamarin Forms!"
       VerticalOptions="Center"
       HorizontalOptions="Center" 
     FontSize="30"/>

</ContentPage>

我的问题:

在我上面

FontSize="30"

是硬编码的。我想将其替换为 android 维度结构的值。

如何为标签设置动态字体大小?

【问题讨论】:

  • 您可以使用平台成语&lt;OnIdiom x:TypeArguments="x:Double" Phone="20" Tablet="40"/&gt; 或从代码管理字体大小。
  • 我真的很感谢@EgorGromadskiy.. 我在谷歌搜索时没有任何线索.. 你给出了线索​​.. 如果可能的话你发布作为答案.. 我准备接受这个

标签: xamarin xamarin.android xamarin.forms


【解决方案1】:

你可以使用平台成语:

<Label>
  <Label.FontSize>
    <OnIdiom x:TypeArguments="x:Double"
             Phone="20"
             Tablet="40"/>
  </Label.FontSize>
</Label>

【讨论】:

  • 这个答案适合IOS应用。但在 android 中它有各种设备。所以我想从 dimens.xml 访问维度值你能帮我吗??
  • @RanjithKumar how to use custom files。你能告诉我你在 dimens.xml 中有什么吗?
  • 我有不同的字体大小来支持 android 中的多设备支持。values-sw-320dp,values-sw-600dp,values-sw-720dp,etc
猜你喜欢
  • 2017-04-15
  • 2017-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-17
相关资源
最近更新 更多