アプリ全体のデフォルトのテーマを設定しました。これは、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" >
これで問題なく動作していますが、アクティビティでは、1 つのレイアウトに別のテーマを設定する必要があります。このようなもの:
+--------------------------------------------------+
| Parent Linear layout (default theme) |
| |
| +------------------------------------+ +-------+ |
| | | | | |
| | Left linear layout | | | |
| | (default theme) | | | |
| | | | | |
| | | | | |
| | | | ·<----------- Right Linear Layout
| | | | | | (Need it in dark theme)
| | | | | |
| | | | | |
| +------------------------------------+ +-------+ |
+--------------------------------------------------+
レイアウト xml ファイルで、右端の子 LinearLayout のテーマを設定しようとしています。
<LinearLayout
style="@style/DarkTheme">
...
これがうまく機能し、暗いテーマを適切なレイアウト (およびその子ビュー) にのみ適用することを期待していますが、機能していません。@style を組み込みの @android:style に置き換えてみましたが、役に立ちませんでした。これをレイアウト エディターと実際のデバイス/シミュレーターでテストしました。
カスタム テーマまたはスタイルを 1 つのレイアウトに適用することはできますか?