Xamarin.Forms ile Dark Mode ve Dinamik Tema Değişimi

Xamarin.Forms ile Dark Mode ve Dinamik Tema Değişimi

Xamarin.Forms ile Dark Mode ve Dinamik Tema Değişimi

Dark Mode, kullanıcı deneyimini artırmak ve enerji tasarrufu sağlamak için popüler bir özelliktir. Xamarin.Forms ile temalar arasında dinamik geçiş yapmayı kolayca uygulayabilirsiniz.

Başlangıç

Temalarınızı ResourceDictionary kullanarak tanımlayın. Örneğin:

LightTheme.xaml



    #FFFFFF
    #000000

DarkTheme.xaml



    #000000
    #FFFFFF

Temayı Dinamik Olarak Değiştirme


public void ApplyTheme(string theme)
{
    var themeDictionary = theme == "Dark" 
        ? new DarkTheme() 
        : new LightTheme();
    Application.Current.Resources.MergedDictionaries.Clear();
    Application.Current.Resources.MergedDictionaries.Add(themeDictionary);
}

Kullanıcı Ayarlarına Göre Tema Seçimi

İlk açılışta cihazın sistem teması algılanabilir:


var currentTheme = Application.Current.RequestedTheme;
ApplyTheme(currentTheme == OSAppTheme.Dark ? "Dark" : "Light");

Sonuç

Xamarin.Forms ile kullanıcıların tercihlerine uygun dinamik temalar sunarak daha modern ve kişiselleştirilmiş bir deneyim sağlayabilirsiniz.