Xamrin.Froms 用户界面——控件——主题

主题

主题要求Xamarin.Forms 2.3预览版。

Xamarin.Forms主题在Evolve 2016上公布,可作为客户预览尝试并提供反馈。

通过添加Xamarin.Forms.Theme.Base Nuget包,加上一个定义特定主题(例如Xamarin.Forms.Theme.Light)的附加包,还可以将一个主题添加到Xamarin.Forms应用程序中,否则本地主题可以为应用程序定义。

有关如何将它们添加到应用程序的说明,请参阅Light主题Dark主题页面,或查看 示例自定义主题

重要信息:您还应该 通过向iOS 和Android 添加一些样板代码,按照步骤加载主题程序集(如下所示)。这将在未来的预览版本中得到改进。AppDelegateMainActivity

控制外观

的主题都定义的标准控件特定的视觉外观。一旦将主题添加到应用程序的资源字典中,标准控件的外观就会改变。

以下XAML标记显示了一些常见的控件:

<StackLayout Padding="40">
    <Label Text="Regular label" />
    <Entry Placeholder="type here" />
    <Button Text="OK" />
    <BoxView Color="Yellow" />
    <Switch />
</StackLayout>

这些截图显示了以下控件:

  • 没有应用主题
  • 光主题(只有微妙的差异,没有主题)
  • 黑暗的主题

  

的styleClass

StyleClass属性允许根据主题提供的定义来更改视图的外观。

的主题都定义了三种不同的外观BoxViewHorizontalRuleCircle,和Rounded。这个标记显示了三种不同BoxView的不同样式类:

<StackLayout Padding="40">
    <BoxView StyleClass="HorizontalRule" />
    <BoxView StyleClass="Circle" />
    <BoxView StyleClass="Rounded" />
</StackLayout>

这样做的光线和暗度如下:

 

内置课程

除了自动设置通用控件之外,Light and Dark主题目前还支持以下可以通过设置StyleClass这些控件来应用的类:

BoxView中的

  • 了Horizo​​ntalRule
  • 圆角

图片

  • 圆角
  • 缩略图

按键

  • 默认
  • 成功
  • 信息
  • 警告
  • 危险
  • 链接

标签

  • 副标题
  • 身体
  • 链接

故障排除

无法加载文件或程序集“Xamarin.Forms.Theme.Light”或其一个依赖项

在预览版本中,主题可能无法在运行时加载。将相关项目中的代码添加到相应的项目中以解决此错误。

iOS版

AppDelegate.cs中添加以下行LoadApplication

var x = typeof(Xamarin.Forms.Themes.DarkThemeResources);
x = typeof(Xamarin.Forms.Themes.LightThemeResources);
x = typeof(Xamarin.Forms.Themes.iOS.UnderlineEffect);

Android的

MainActivity.cs中添加以下行LoadApplication

var x = typeof(Xamarin.Forms.Themes.DarkThemeResources);
x = typeof(Xamarin.Forms.Themes.LightThemeResources);
x = typeof(Xamarin.Forms.Themes.Android.UnderlineEffect)
;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值