3

それぞれの「レイアウト」は白の背景を設定し、「マニフェスト」はTheme.Lightを設定しました。それでも、白ではなく灰色の背景を受け取ります。なんで?

編集:

Manifest.xml

android:theme="@android:style/Theme.Light.NoTitleBar">

レイアウト

android:background="@android:color/white" 
4

3 に答える 3

1

Theme.Lightは、白になるという意味ではありません。暗くなく、明るくなることを意味します:Pこれはtheme.whiteではありません。

各デバイスメーカーは、携帯電話のAndroid OSを、たとえば好みの色やルックアンドフィールにカスタマイズできます。特に、彼はAndroid実装のスタイルを定義できます-明るい色と暗い色。そのおかげで、アプリはさまざまなデバイスで異なって見える場合がありますが、常にこのデバイスで使用されているスタイルに適合します(android:background = "@ android:を設定しない限り、スタイルTheme.Lightのすべてのアプリの背景は灰色になります。カラー/ホワイト」)

デバイスのメーカーがスタイルTheme.Lightを灰色の背景のスタイルとして定義しました。

私が明確であることを願っています-そうでなければ、遠慮なく質問してください

于 2012-10-02T19:20:34.087 に答える
0

@android:color/white明示的に変更するまで、同じ問題が発生しましたandroid:background="#FFFFFF"。でも奇妙な...

于 2012-10-02T17:04:12.213 に答える
0

古い質問なので、これにはすでに別の解決策があるかもしれませんが、とにかくstyles.xmlにAppThemeスタイルタグを入力するだけでよいので、⌘cmdキーを押してマニフェストのテーマ宣言をクリックすることで入力できます。

あそこにあなたの好きな色でこの線を追加してください-

<item name="android:windowBackground">@color/white</item>

この行は基本的に、テーマのデフォルトの背景値を上書きします。

例 -

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="android:colorControlActivated">@color/black</item>
    <item name="android:windowBackground">@color/white</item>
</style>
于 2021-01-09T00:46:36.807 に答える