1

アプリケーションにテーマを持たせたい。Android アプリケーションで、layout-default、layout-blue、layout-red ディレクトリなどを作成することは可能ですか? または、res-default、res-blue などの別の res ディレクトリですか?

4

2 に答える 2

3

こちらに記載されているように、サイズまたは向き以外のスタイルごとに個別のレイアウトを作成することはできません。これにより、使用できるさまざまなレイアウトのかなり完全なリストが得られます。

やりたいことを実行し、赤のレイアウト、青のレイアウト、およびその他のレイアウトを作成するには、ここに記載されているように、すべてのレイアウトを好きなようにスタイル設定できるアプリケーション テーマを使用します

まず、カスタム テーマを で作成しますstyles.xml。これらは基本的なものですが、できるカスタマイズの量に終わりはありません。

<style name="RedTheme" parent="android:Theme.Light">
    <item name="android:windowBackground">#ff0000</item>
</style>

<style name="BlueTheme" parent="android:Theme.Light">
    <item name="android:windowBackground">#0000ff</item>
</style>

次に、onCreateを設定する前に、アクティビティのメソッドでそれらを参照しますcontentView

public void onCreate(Bundle savedInstanceState) {
setTheme(R.style.BlueTheme);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

選択したテーマを に保存してSharedPreferencesそこから参照するか、それぞれに異なるテーマを手動で設定することができますActivity。テーマは、 のActivityレベルにも設定できますManifest

于 2013-03-14T22:04:30.580 に答える
1

答えはノーだ。独自のフォルダ階層を作成することはできません。しかし、あなたの質問によると、さまざまなスタイルやテーマを簡単に作成して使用できるように、さまざまな色のテーマでさまざまなレイアウトを作成したいようです。詳細については、このリンクを確認してください

于 2013-03-14T21:44:44.460 に答える