我为整个应用程序设置了一个默认主题。它在styles.xml 中定义如下:
<style name="DefaultTheme" parent="@android:style/Theme.Holo.Light">
<!-- Customization here -->
</style>
我还定义了一个黑暗主题:
<style name="DarkTheme" parent="@android:style/Theme.Holo">
<!-- Customization here -->
</style>
在清单中,它被声明为应用程序的主主题:
<application
...
android:theme="@style/DefaultTheme" >
现在这工作正常,但在活动中,我需要为单个布局设置不同的主题。像这样的东西:
+--------------------------------------------------+
| Parent Linear layout (default theme) |
| |
| +------------------------------------+ +-------+ |
| | | | | |
| | Left linear layout | | | |
| | (default theme) | | | |
| | | | | |
| | | | | |
| | | | ·<----------- Right Linear Layout
| | | | | | (Need it in dark theme)
| | | | | |
| | | | | |
| +------------------------------------+ +-------+ |
+--------------------------------------------------+
在布局 xml 文件中,我尝试为最右边的子 LinearLayout 设置主题:
<LinearLayout
style="@style/DarkTheme">
...
我希望这可以正常工作,并将深色主题仅应用于正确的布局(及其子视图),但它不起作用。我尝试用内置的 @android:style 替换 @style 无济于事。我已经在布局编辑器和真实设备/模拟器上对此进行了测试。
是否可以将自定义主题或样式应用于单个布局?