如何在Xamarin.Android中动态更改主题?

时间:2019-04-22 11:05:09

标签: android user-interface dynamic xamarin.android android-theme

我在Xamarin.Android上有一个应用程序。

我在应用程序中有一个按钮。单击此按钮可以更改主题。但是我不想在每个主题更改时调用onCreate方法。

    protected override void OnCreate(Bundle savedInstanceState)
    {
        SetTheme(StaticStore.IsChangeTheme ? Resource.Style.SxTheme : Resource.Style.DesignSx);

        base.OnCreate(savedInstanceState);
        SetContentView(Resource.Layout.activity_main);

        FindViewById<Button>(Resource.Id.ButtonChangeTheme).Click += (s, e) =>
        {
            if (StaticStore.IsChangeTheme)
            {
                StaticStore.IsChangeTheme = false;
            }
            else
            {
                StaticStore.IsChangeTheme = true;
            }
            Recreate();
        };
    }

在当前代码中,按下每个按钮以使用Recreate方法进入onCreate方法。

如何动态执行此操作?我不希望重新创建页面。

0 个答案:

没有答案