2012-06-06 10 views
17

Theme.Lightを使用している残りのプロジェクトでは、Theme.Light.Dialogは使用できません。テーマをAndroidのTheme.Light.Dialogのように変更してください。

Theme.DialogTheme.LightバージョンのDialogのように変更するにはどうすればよいですか。

stylespaceのTheme.Dialogのセクションを次のように上書きする必要があることを知っています。どの項目をどの値で上書きすればよいですか?

<style name="dialog_light" parent="@android:style/Theme.Dialog"> 
    <item name="android:???????"></item> 
    <item name="android:???????"></item> 
</style> 

私は白、灰色の明るい背景を作ることができますが、ボタン、スピナーなどにも光を背景に良く見て光をテーマに異なっています。私はそれが働いて得たよう

EDIT

が見えます。

<color name="black">#FF000000</color> 
<color name="whitegrey">#FFF2F2F2</color> 

<style name="dialog_light" parent="@android:style/Theme.Dialog"> 
    <item name="@android:windowBackground">@color/whitegrey</item> 
    <item name="@android:textColor">@color/black</item>   
</style> 
+0

は([この]を試してみてくださいhttp://pastie.org/4037973)を参照してください。 – Praveenkumar

答えて

29

私はそれが働いているように見えます。

<color name="black">#FF000000</color> 
<color name="whitegrey">#FFF2F2F2</color> 

<style name="dialog_light" parent="@android:style/Theme.Dialog"> 
    <item name="@android:windowBackground">@color/whitegrey</item> 
    <item name="@android:textColor">@color/black</item>   
</style> 
+5

+1あなたはどのようにスタイルをダイアログに割り当てましたか? – Roylee

+2

マニフェスト内のアクティビティに割り当てると、ダイアログのように見えます。 (android:theme = "@ style/dialog_light") – Ostkontentitan

+0

ダイアログのインスタンスを作成する際に、R.style.yourstyleを2番目の引数として渡すこともできます – SimpleCoder

5

これはいいですね、ありがとう! 私はちょっと変えました。あなたが提案したものを実行すると、画面全体がバックカラーで塗りつぶされ、ダイアログが(前のアクティビティが淡色で)表示されないように見えます。だからではなく、単に色を作る避けるために、上記にさらに

@android:background 
7

を使用

@android:windowBackground 

を使用するので、私はこれをしなかった

<!-- Makes a "light" equivalent of Theme.Dialog --> 
<style name="dialog_light" parent="@android:style/Theme.Dialog"> 
    <item name="@android:background">@android:color/background_light</item> 
    <item name="@android:textColor">@android:color/primary_text_light</item>  
</style> 
関連する問題