I know how to apply a theme to a whole application, but where would I go to apply a theme to just a single activity?
You can apply a theme to any activity by including android:theme
inside <activity>
inside manifest file.
For example:
<activity android:theme="@android:style/Theme.Dialog">
<activity android:theme="@style/CustomTheme">
And if you want to set theme programatically then use setTheme()
before calling setContentView()
and super.onCreate()
method inside onCreate()
method.
To set it programmatically in 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);
To set in Application scope in Manifest.xml (all activities):
<application android:theme="@android:style/Theme.Holo" android:theme="@style/MyTheme">
To set in Activity scope in Manifest.xml (single activity):
<activity android:theme="@android:style/Theme.Holo" android:theme="@style/MyTheme">
To build a custom theme, you will have to declare theme in themes.xml file, and set styles in styles.xml file.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With