Izmail360
Izmail360

Reputation: 89

Xamarin.Forms Graphical issues - DatePicker text is missing, Switch background is missing

I am creating Xamarin.Forms application (Android and iOS) and I am experiencing graphical issues with DatePicker, Switch and other controls.

enter image description here

I have tried to build new sample application (which comes with Visual Studio) on several Android devices and the issue persists. I am not experiencing this issues on Andorid simulator though.

Any help appreciated. Thanks

Upvotes: 0

Views: 188

Answers (1)

Argon
Argon

Reputation: 821

This is because of the theme of the device. (Dark / Light). You can override the colors by adding these to the style.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="MainTheme" parent="MainTheme.Base">
    </style>
    <!-- Base theme applied no matter what API -->
    <style name="MainTheme.Base" parent="Theme.AppCompat.DayNight">
        <!--If you are using revision 22.1 please use just windowNoTitle. Without android:-->
        <item name="windowNoTitle">true</item>
        <!--We will be using the toolbar so no need to show ActionBar-->
        <item name="windowActionBar">false</item>
        <!-- Set theme colors from https://aka.ms/material-colors -->
        <!-- colorPrimary is used for the default action bar background -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <!-- colorPrimaryDark is used for the status bar -->
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <!-- colorAccent is used as the default value for colorControlActivated
         which is used to tint widgets -->
        <item name="colorAccent">@color/colorAccent</item>
        <!-- You can also set colorControlNormal, colorControlActivated
         colorControlHighlight and colorSwitchThumbNormal. -->
        <item name="windowActionModeOverlay">true</item>
        <item name="android:statusBarColor">#000000</item>
        <item name="android:datePickerDialogTheme">@style/AppCompatDialogStyle</item>
    </style>
    <style name="AppCompatDialogStyle" parent="Theme.AppCompat.Light.Dialog">
        <item name="colorAccent">@color/colorAccent</item>
    </style>
</resources>

Upvotes: 1

Related Questions