Android 在运行时更改样式属性

Android 在运行时更改样式属性,android,bitmap,styles,themes,Android,Bitmap,Styles,Themes,我使用以下样式设置应用程序主题 <style name="Background1" parent="@android:style/Theme.NoTitleBar.Fullscreen"> <item name="android:windowBackground">@drawable/bigl_2</item> <item name="android:windowNoTitle">true</item&

我使用以下样式设置应用程序主题

    <style name="Background1" parent="@android:style/Theme.NoTitleBar.Fullscreen">
        <item name="android:windowBackground">@drawable/bigl_2</item>
        <item name="android:windowNoTitle">true</item>
    </style>
这里我的要求是我想改变一个位图图像的主题,我如何在运行时做到这一点


谢谢

您可能想看看同样的问题:

在我看来,问题在于通用样式属性可以强制屏幕重新布局,因此在运行时没有API来更改样式-您需要重新创建屏幕(同样的方法也适用于横向/纵向屏幕方向的改变,其中活动被重新创建,安卓系统架构师的大大脑在onCreate()中发明了savedState以简化(复杂化?)该过程,然后发明了片段以简化该过程。)

因此,更改样式通常意味着更改布局。但是您可以在运行时更改主题属性(根据上面的链接-我自己还没有尝试过),并且它可以工作,因为它不需要重新布局


作为一种解决方法,由于您需要为新布局重新创建视图,您可以通过应用不同的主题来简化代码,请参见链接。

您可能需要查看相同的问题:

在我看来,问题在于通用样式属性可以强制屏幕重新布局,因此在运行时没有API来更改样式-您需要重新创建屏幕(同样的方法也适用于横向/纵向屏幕方向的改变,其中活动被重新创建,安卓系统架构师的大大脑在onCreate()中发明了savedState以简化(复杂化?)该过程,然后发明了片段以简化该过程。)

因此,更改样式通常意味着更改布局。但是您可以在运行时更改主题属性(根据上面的链接-我自己还没有尝试过),并且它可以工作,因为它不需要重新布局


作为一种解决方法,由于您需要为新布局重新创建视图,您可以通过应用不同的主题来简化代码,请参见链接。

我刚才看到了同样的问题!!!现在,我看到了同样的问题!!!在
setTheme(R.style.background1);