Jak ustawić motyw Holo Dark w aplikacji na Androida?

109

Jak ustawić motyw ciemnego holo w mojej aplikacji? W tej chwili mam to:

<style name="AppTheme" parent="android:Theme.Holo.Light" />

Ale kiedy zmienię to na:

<style name="AppTheme" parent="android:Theme.Holo.Dark" />

Otrzymuję błąd error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Holo.Dark'.

Jak rozwiązać problem?

gurehbgui
źródło
jaki błąd zasobów? opracować ...
waqaslam
1
błąd: Błąd podczas pobierania elementu nadrzędnego dla elementu: Nie znaleziono zasobu pasującego do podanej nazwy „android: Theme.Holo.Dark”.
gurehbgui

Odpowiedzi:

219

zmień parent="android:Theme.Holo.Dark" naparent="android:Theme.Holo"

Motyw Holo Dark nazywa się Holo

Lars Werkman
źródło
1
Znalezienie tego posta zajęło mi kilka dni. Zmieniając motyw na Holo, podgląd działa dobrze, ale w styles.xml otrzymuję element nadrzędny z nieprawidłowym dodaniem „.Dark”. I dlatego cały czas pokazywał biały motyw. Dodano raport o błędzie dla tego ...
Yster,
Okazuje się, że zmiana motywu podglądu nie wpływa na żadne pliki. Służy tylko do podglądu wyglądu motywu.
Yster
29

Domyślnie Android ustawi Holo na ciemny motyw. Nie ma motywu o nazwie Holo.Dark, jest tylko Holo.Light, dlatego otrzymujesz błąd nie znaleziono zasobu.

Więc po prostu ustaw to na:

<style name="AppTheme" parent="android:Theme.Holo" />
Anup Cowkur
źródło
8

Według android.com wystarczy ustawić go w pliku AndroidManifest.xml:

http://developer.android.com/guide/topics/ui/themes.html#ApplyATheme

Dodanie atrybutu motywu do elementu aplikacji zadziałało dla mnie:

--AndroidManifest.xml--

...

<aplikacja ...

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

</application>

Peter Shannon
źródło
Chociaż jest to wykonalne rozwiązanie ... dobrą praktyką jest zachowanie zmian motywu w styles.xml i odnoszenie się do manifestu
Devrath
2

W pliku manifestu aplikacji dla systemu Android pod tagiem aplikacji możesz wypróbować kilka z tych motywów.

Zastąpić

<application
    android:theme="@style/AppTheme" >

z różnymi motywami zdefiniowanymi przez system Android. Mogą to być: -

android:theme="@android:style/Theme.Black"
android:theme="@android:style/Theme.DeviceDefault"
android:theme="@android:style/Theme.DeviceDefault.Dialog"
android:theme="@android:style/Theme.Holo"
android:theme="@android:style/Theme.Translucent"

Każdy z tych motywów będzie miał inny wpływ na twoją aplikację, tak jak DeviceDefault.Dialog sprawi, że twoja aplikacja będzie wyglądać jak okno dialogowe. Powinieneś spróbować więcej. Możesz zajrzeć z zestawu SDK systemu Android lub po prostu użyć funkcji automatycznego uzupełniania w środowisku Eclipse IDE, aby poznać różne dostępne opcje.

Prawidłowym sposobem zdefiniowania własnego motywu byłaby edycja styles.xmlpliku znajdującego się w folderze zasobów aplikacji.

nikoo28
źródło
1
Tak, właściwą drogą jest edycja styles.xml w celu ustawienia motywu. Np .: <style name = "AppBaseTheme" parent = "android: Theme.Holo">
nous