Androidアプリでホロダークテーマを設定する方法


109

アプリでダークホロテーマを設定するにはどうすればよいですか?この時に私はこれを得ました:

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

しかし、私がそれを次のように変更すると、

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

エラーが出る error: Error retrieving parent for item: No resource found that matches the given name 'android:Theme.Holo.Dark'.

問題を解決するには?


どのリソースエラー?手の込んだ...
waqaslam

1
エラー:アイテムの親を取得中にエラーが発生しました:指定された名前「android:Theme.Holo.Dark」に一致するリソースが見つかりませんでした。
gurehbgui

回答:


219

変更parent="android:Theme.Holo.Dark"parent="android:Theme.Holo"

ホロダークテーマはホロと呼ばれています


1
この投稿を見つけるまでに数日かかりました。テーマをHoloに変更すると、プレビューは正常に機能しますが、styles.xmlで「.Dark」が誤って追加された親を取得します。そして、それが白いテーマを示し続けた理由です。このバグレポートを追加しました...
Yster

プレビューテーマを変更しても、ファイルには影響しません。テーマがどのように見えるかをプレビューするためだけのものです。
Yster

29

デフォルトでは、androidはHoloをDarkテーマに設定します。Holo.Darkというテーマはありません。Holo.Lightしかありません。そのため、リソースが見つかりませんというエラーが表示されます。

したがって、次のように設定します。

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

8

android.comによると、設定する必要があるのはAndroidManifest.xmlファイルだけです。

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

テーマ属性をアプリケーション要素に追加するとうまくいきました:

--AndroidManifest.xml--

...

<申し込み...

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

</アプリケーション>


これは実行可能なソリューションですが、テーマの変更をstyles.xmlに保持し、マニフェストで参照することをお勧めします
Devrath

2

アプリケーションのAndroidマニフェストファイルのapplicationタグの下で、これらのテーマのいくつかを試すことができます。

交換する

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

Androidシステムで定義されたさまざまなテーマ。それらは次のようになります:-

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"

これらの各テーマは、DeviceDefault.Dialogがアプリケーションをダイアログボックスのように見えるように、アプリケーションに異なる影響を与えます。あなたはこれらの多くを試す必要があります。アンドロイドSDKの外観を確認するか、Eclipse IDEでオートコンプリートを使用して、さまざまな利用可能なオプションを調べることができます。

独自のテーマを定義する正しい方法styles.xmlは、アプリケーションのリソースフォルダーにあるファイルを編集することです。


1
はい、正しい方法は、styles.xmlを編集してテーマを設定することです。例:<style name = "AppBaseTheme" parent = "android:Theme.Holo">
nous
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.