Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
ve AppThemeColor ileAppThemeObject, cihazınız için cihaz teması güncelleştirildiğinde otomatik olarak güncelleştirilen tema kullanan kaynaklar oluşturabilirsiniz.
AppThemeObject ve AppThemeColor nesneleri, uygulamanın geçerli temasına bağlı olarak değiştirilmesi gereken renkler, resimler ve diğer kaynaklarla çalışmayı kolaylaştıran tema kullanan kaynaklardır.
Bu nesneler .NET MAUI'de bulunan kavramları AppThemeBinding temel alır ve içindeki bu tür kaynaklarla ResourceDictionaryçalışmayı kolaylaştırır.
Bu nedenle, bu API'leri genellikle XAML'deki ThemeResource işaretleme uzantısı aracılığıyla kullanmanız gerekir.
Sözdizimi
XAML ad alanını dahil edin
Araç setini XAML'de kullanmak için sayfanıza veya görünümünüzde aşağıdakilerin xmlns eklenmesi gerekir:
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit"
Bu nedenle aşağıdakiler:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml">
</ContentPage>
aşağıdakiler dahil xmlns edilecek şekilde değiştirilir:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">
</ContentPage>
AppThemeResource
AppThemeObject, ve Default özellikleri için LightDark herhangi object bir ayar yapmanızı sağlayan genel bir tema kullanan nesnedir. AppThemeObject Türü kesin olarak belirtilmemiş olduğundan, çalışma zamanında her özelliğin değerleri değerlendirilir ve dönüştürülür.
Uyarı
Atama geçersizse, bu bir çalışma zamanı özel durumuyla sonuçlanabilir.
Aşağıdaki örnekte, aracılığıyla nasıl kullanılacağı AppThemeObject gösterilmektedir ResourceDictionary:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">
<ContentPage.Resources>
<toolkit:AppThemeObject Light="dark.png" Dark="light.png" x:Key="MyImageSource" />
</ContentPage.Resources>
<VerticalStackLayout>
<Image Source="{toolkit:AppThemeResource MyImageSource}" />
</VerticalStackLayout>
</ContentPage>
AppThemeColor
, ve Default özellikleri için Dark Lightbir ayarlamanıza olanak tanıyan özel bir Color temadırColor.AppThemeColor
Aşağıdaki örnekte, aracılığıyla nasıl kullanılacağı AppThemeColor gösterilmektedir ResourceDictionary:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">
<ContentPage.Resources>
<toolkit:AppThemeColor Light="Red" Dark="Green" x:Key="LabelTextColor" />
</ContentPage.Resources>
<VerticalStackLayout>
<Label TextColor="{toolkit:AppThemeResource LabelTextColor}" />
</VerticalStackLayout>
</ContentPage>
Stiller Aracılığıyla AppThemeColor ve AppThemeResource Kullanma
Bu tema kullanan kaynakları içinde ResourceDictionarykullanabildiğimiz için, bu kaynakları bir Stylearacılığıyla da kullanabileceğimiz anlamına gelir.
Aşağıdaki örnekte, aracılığıyla nasıl kullanılacağı AppThemeColor gösterilmektedir Style:
<ContentPage
x:Class="CommunityToolkit.Maui.Sample.Pages.MyPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:toolkit="http://schemas.microsoft.com/dotnet/2022/maui/toolkit">
<ContentPage.Resources>
<toolkit:AppThemeColor Light="Red" Dark="Green" x:Key="LabelTextColor" />
<Style x:Key="Headline" TargetType="Label">
<Setter Property="FontFamily" Value="Segoe UI" />
<Setter Property="FontSize" Value="10" />
<Setter Property="TextColor" Value="{toolkit:AppThemeResource LabelTextColor}" />
</Style>
</ContentPage.Resources>
<VerticalStackLayout>
<Label Style="{StaticResource Headline}" />
</VerticalStackLayout>
</ContentPage>
Genişletilebilirlik
AppThemeColor Hem hem de AppThemeObject soyut sınıfından AppThemeObject<T>devralın. .NET MAUI Community Toolkit'te bulunmayan daha kesin türe sahip bir kaynağa ihtiyacınız varsa kendi devralmanızı oluşturabilirsiniz.
Properties
Aşağıdaki tabloda ve AppThemeColoriçin özellikleri AppThemeObject açıklanmaktadır. içinAppThemeColor, her özelliğin türleri yerine objectolurColor.
| Özellik | Türü | Açıklama |
|---|---|---|
| Koyu | object |
Uygulama koyu temayı kullandığında bu kaynağın uygulandığı özelliğe uygulanan değer. |
| Varsayılan | object |
Uygulama açık veya koyu temayı kullandığında ve bu temanın ilgili özelliği için herhangi bir değer sağlandığında bu kaynağın uygulandığı özelliğe uygulanan değer. |
| Açık | object |
Uygulama ışık temasını kullandığında bu kaynağın uygulandığı özelliğe uygulanan değer. |
Örnekler
.NET MAUI Community Toolkit Örnek Uygulaması'nda bunun bir örneğini AppThemeResource iş başında bulabilirsiniz.
API
üzerinde için AppThemeResource kaynak kodunu .NET MAUI Community Toolkit GitHub deposunda bulabilirsiniz.
.NET MAUI Community Toolkit