Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将自定义字体族与Xamarin CSS结合使用?_Xamarin_Xamarin.forms - Fatal编程技术网

如何将自定义字体族与Xamarin CSS结合使用?

如何将自定义字体族与Xamarin CSS结合使用?,xamarin,xamarin.forms,Xamarin,Xamarin.forms,允许您使用类似于CSS的语法指定字体系列。我需要设置自定义字体。通常是这样的: <Style x:Key="RockwellFontLabel" TargetType="Label"> <Setter Property="FontFamily"> <OnPlatform x:TypeArguments="x:String"> <On Platform="Android" Value="RockwellStd

允许您使用类似于CSS的语法指定
字体系列
。我需要设置自定义字体。通常是这样的:

<Style x:Key="RockwellFontLabel" TargetType="Label">
    <Setter Property="FontFamily">
        <OnPlatform x:TypeArguments="x:String">
            <On Platform="Android" Value="RockwellStd.otf#RockwellStd.otf" />
            <On Platform="iOS" Value="RockwellStd" />
        </OnPlatform>
    </Setter>
</Style>

...

<Label Style="{StaticResource RockwellFontLabel}" Text="I AM TEXT"/>
但这只会决定颜色。它根本没有设置我的自定义字体系列。显然,在Android上,字体位于
/Assets/RockwellStd.otf
下,构建操作设置为
AndroidAsset
,而
/Resources/Fonts/RockwellStd.otf
下,构建操作设置为
BundleResource


是否可以将自定义字体与Xamarin CSS一起使用?如果是,怎么做?

因此,这里关于CSS的问题非常有效,这将是在Xamarin Forms>中使用样式的最大优势之一,适用于集合中的所有子项

但是Xamarin表单中CSS的当前(写作时)状态仍然是有限的。从这个意义上说,在CSS样式中,为每个平台的自定义字体定义定位一个可能的
StaticResource
,仍然是不可能的。 将上述问题提交给当时的沙马林表PM的David Ortinau()

所以现在我们只能通过一些xaml样式来解决这个问题,我建议您为每个平台的自定义字体保留原始的
StaticResource
样式定义。但是,不要在常规
App.xaml
中应用它,而只尝试在视图或UI元素的
ResourceDictionary
属性中设置它,您只希望它出现在该属性中


如果您试图在
资源字典
中使用
隐式样式
,则无需向每个标签元素添加
样式=“{StaticResource RockwellFontLabel}”
标记。

如果您使用.otf,则需要设置为标签文本“\uyorConcode”(例如:“\uf0c5”)。这是一个类似的问题,它也可以工作!这不是CSS,但它实现了我的目标。也就是说,我可以为元素的所有子元素声明一次样式。很抱歉,这是内联的,但这里有一个工作示例:
#myElement * {
    font-family: 'RockwellStd';
    color: hotpink;
}