Bir temayı tüm uygulamaya nasıl uygulayacağımı biliyorum, ancak temayı tek bir etkinliğe uygulamak için nereye gitmeliyim?
Yanıtlar:
Sen dahil ederek herhangi bir faaliyet için bir tema uygulayabilirsiniz android:theme
içini <activity>
tezahür dosya içindeki.
Örneğin:
<activity android:theme="@android:style/Theme.Dialog">
<activity android:theme="@style/CustomTheme">
Ve temayı programlı olarak ayarlamak istiyorsanız, yöntem içinde setTheme()
çağırmadan setContentView()
ve super.onCreate()
yöntem kullanmadan önce kullanın onCreate()
.
tools:context= ".YourAtivityName"
kökte xml kullanımı
Bunu Activity.java'da programlı olarak ayarlamak için:
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'de Uygulama kapsamını ayarlamak için (tüm etkinlikler):
<application
android:theme="@android:style/Theme.Holo"
android:theme="@style/MyTheme">
Manifest.xml'de (tek etkinlik) Etkinlik kapsamını ayarlamak için:
<activity
android:theme="@android:style/Theme.Holo"
android:theme="@style/MyTheme">
Özel bir tema oluşturmak için, temayı themes.xml dosyasında bildirmeniz ve styles.xml dosyasında stilleri ayarlamanız gerekir.
android:theme
özellik eklediniz ?
android:theme="@android:style/Theme.Holo"
Android yerleşik teması eklemek için kullanılan sözdizimidir. dosyanızda android:theme="@style/MyTheme"
açıklanan özel bir tema eklemek için kullanılan sözdizimidir styles.xml
. Gerçek AndroidManifest.xml
dosyanızda, her bölüm için yalnızca birini veya diğerini kullanırsınız, ikisini birden kullanamazsınız.
styles.xml
ve ardından sözdizimini kullanın android:theme=@style/MyBlankTheme
.