2013-10-01 15 views

Odpowiedz

120

można zastosować motyw do każdej działalności, włączając android:theme wewnątrz <activity> wewnątrz pliku manifestu.

Na przykład:

  1. <activity android:theme="@android:style/Theme.Dialog">
  2. <activity android:theme="@style/CustomTheme">

A jeśli chcesz ustawić motyw programowo następnie użyć setTheme() przed wywołaniem setContentView() i super.onCreate() metodę wewnątrz onCreate() metody.

+1

Co należy zrobić, aby wyłączyć motyw? na jednej aktywności –

+0

@Yousha Aleayoub: czy próbowałeś ustawić inny motyw? – Yannick

+0

Nie, ale po prostu chcę wyłączyć/usunąć motyw i uczynić go podstawowym ... :) –

8

Zanim zadzwonisz pod numer setContentView(), zadzwoń pod numer setTheme(android.R.style...) i po prostu zamień ... żądany motyw (motyw, motyw_NoTitleBar itp.).

Lub, jeśli tematem jest motyw niestandardowy, a następnie wymienić całą rzecz, więc masz setTheme(yourThemesResouceId)

23

Aby ustawić programowo w 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); 

ustawione w zakres stosowania w manifest.xml (wszystkie działania)

<application 
    android:theme="@android:style/Theme.Holo" 
    android:theme="@style/MyTheme"> 

Aby określić zakres aktywności w manifest.xml (pojedyncza aktywność):

<activity 
    android:theme="@android:style/Theme.Holo" 
    android:theme="@style/MyTheme"> 

Aby utworzyć niestandardową kompozycję, musisz zadeklarować motyw w numerze plik themes.xml i ustaw style w pliku styles.xml.

+1

Co wyłączyć motyw? na jednym działaniu –

+2

Dlaczego dodałeś dwa atrybuty 'android: theme'? –

+0

@Vineet Kaushik, 'android: theme =" @ android: style/Theme.Holo "' to składnia do dodania wbudowanego motywu systemu Android. 'android: theme =" @ style/MyTheme "' jest składnią do dodawania niestandardowego motywu opisanego w pliku 'styles.xml'. W twoim aktualnym pliku "AndroidManifest.xml" używałbyś tylko jednego lub drugiego dla każdej sekcji, a nie dla obu. –

Powiązane problemy