アプリケーション全体にテーマを適用する方法を知っていますが、1つのアクティビティだけにテーマを適用するにはどこに行きますか?
回答:
あなたは含めることにより、任意のアクティビティにテーマを適用することができますandroid:theme内部を<activity>マニフェストファイル内。
例えば:
<activity android:theme="@android:style/Theme.Dialog"><activity android:theme="@style/CustomTheme">また、プログラムでテーマを設定する場合は、メソッド内のメソッドをsetTheme()呼び出す前に使用します。setContentView()super.onCreate()onCreate()
tools:context= ".YourAtivityName"ルートでのアクティビティxmlの使用
Activity.javaでプログラムで設定するには:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.MyTheme); // (for Custom theme)
setTheme(android.R.style.Theme_Holo); // (for Android Built In Theme)
this.setContentView(R.layout.myactivity);
Manifest.xml(すべてのアクティビティ)のアプリケーションスコープで設定するには:
<application
android:theme="@android:style/Theme.Holo"
android:theme="@style/MyTheme">
Manifest.xml(単一アクティビティ)のアクティビティスコープで設定するには:
<activity
android:theme="@android:style/Theme.Holo"
android:theme="@style/MyTheme">
カスタムテーマを作成するには、themes.xmlファイルでテーマを宣言し、styles.xmlファイルでスタイルを設定する必要があります。
android:theme属性を追加したのですか?
android:theme="@android:style/Theme.Holo"は、Androidの組み込みテーマを追加するための構文です。 ファイルにandroid:theme="@style/MyTheme"記述されているカスタムテーマを追加するための構文styles.xmlです。実際のAndroidManifest.xmlファイルでは、セクションごとにどちらか一方のみを使用し、両方は使用しません。
styles.xmlから、構文を使用しますandroid:theme=@style/MyBlankTheme。