gpt4 book ai didi

c# - 我可以在 Xamarin Forms 中创建样式主题吗?

转载 作者:太空宇宙 更新时间:2023-11-03 19:04:35 24 4
gpt4 key购买 nike

我目前的所有样式都在我的 App.xaml 文件中。有没有办法将它们分组为一个主题,以便我可以使用多个应用程序主题并随意更改?

最佳答案

据我所知,Xamarin.Forms 中没有内置的主题支持,但您可以实现一个。你需要做的:1. 向您的 App.xaml 添加一些具有相同样式列表的 ResourceDictionaries。

<Application
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="ThemeTest.App">
<Application.Resources>
</Application.Resources>
<ResourceDictionary x:Name="Default">
<Style x:Key="labelStyle" TargetType="Label">
<Setter Property="TextColor" Value="Green" />
</Style>
</ResourceDictionary>
<ResourceDictionary x:Name="Second">
<Style x:Key="labelStyle" TargetType="Label">
<Setter Property="TextColor" Value="Yellow" />
</Style>
</ResourceDictionary>
</Application>

2。在您的 App.xaml.cs 中添加代码以在样式之间切换。

public partial class App : Application
{
public App()
{
InitializeComponent();
SetDefaultStyle();
MainPage = new TestPage();
}

public void SetDefaultStyle()
{
Resources = Default;
}

public void SetSecondStyle()
{
Resources = Second;
}
}

3。在 XAML 中使用 DynamicResource 标记扩展引用您的样式。

<Label Text="Test text" Style="{DynamicResource labelStyle}" />

我创建了您可以找到的示例应用程序 here .Shell你有什么问题欢迎提问。

关于c# - 我可以在 Xamarin Forms 中创建样式主题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30331358/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com