J'ai réussi à le faire fonctionner en définissant le thème sur le contexte du fragment avant d'appeler l'inflateur.
NOTE : Il s'agit d'un exemple pour Xamarin.Android en combinaison avec MvvmCross. Je ne suis pas sûr à 100% que cela fonctionne également pour les programmeurs Java. Mais vous pouvez essayer :)
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
Context.SetTheme(Theme);
base.OnCreateView(inflater, container, savedInstanceState);
var view = this.BindingInflate(FragmentLayoutId, container, false);
// Doing some other stuff
return view;
}
Le code de la méthode d'extension SetTheme
public static void SetTheme(this Context context, AppThemeStyle themeStyle)
{
var themeStyleResId = themeStyle == AppThemeStyle.Dark ? Resource.Style.AppTheme : Resource.Style.AppTheme_Light;
context.SetTheme(themeStyleResId);
}
J'espère que cela aidera certaines personnes, merci !