有没有办法在Xamarin.Forms
中为元素/页面全局配置样式。
目前我有一个Helpers.Colors
类,可以单独设置属性
每个按钮和主/详细页面。但是有一个地方会很高兴
配置它。主要是我想摆脱Android所拥有的股票黑暗渐变。
答案 0 :(得分:0)
截至目前(1.2.3),Xamarin.Forms中没有内置样式。您可以通过以下任一方式实现样式:
子类
你可以,例如定义你自己的按钮,你可以在其中设置你喜欢的默认值:public class MyButton : Button
{
public MyButton ()
{
BackgroundColor = Color.Pink;
}
}
然后在想要主题按钮的任何地方使用MyButton。
创建扩展方法
如果不能为您创建子类,那么最干净的解决方案是编写一个扩展方法为您执行此操作:
public static void SetStyle (this Button button)
{
button.BackgroundColor = Color.Pink;
}
你可以这样使用它:
var button = new Button();
button.SetStyle ();
答案 1 :(得分:0)
另一种可能是使用本机平台功能,在IOS上你可以使用Apperance API,在Android上使用Syles和Themes。
答案 2 :(得分:0)
虽然Xamarin.Forms
中没有内置样式,但我在6月份实施了快速回复以回答此StackOverflow问题:Is there any way to separate the styling from my XAML in Xamarin.Forms。
代码在答案中:https://stackoverflow.com/a/24430820/1063783
它不是一个完整的Style实现,但它确实符合您的需求。
答案 3 :(得分:0)
现在使用1.3,您可以使用非常类似于WPF的样式。有关详细信息,请查看此guide。