在我的应用中,所有背景设置为@background="@android:color/white"
的视图都在三星Galaxy S3 mini以外的所有设备上正确显示。在这种情况下,所有这些视图都设置了灰色背景。
在这种特定情况下,包含复选框的LinearLayout的背景应为白色:
<LinearLayout
android:id="@+id/ll_child1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:padding="10dp"
android:orientation="vertical" >
...
</LinearLayout>
我尝试将android:background="@android:color/white"
替换为android:background="#FFFFFF"
,但唯一可行的解决方案是在我的drawable目录中创建white_bg.xml:
<item android:bottom="0px">
<shape android:shape="rectangle" >
<solid android:color="@android:color/white" />
</shape>
</item>
并将背景设置更改为android:background="@drawable/white_bg"
。
认为这解决了我的问题,更改我的应用程序中的所有布局非常烦人,特别是因为这个问题似乎只影响少数设备。我想知道是否有更优雅的解决方案。
答案 0 :(得分:7)
更改AppTheme中的“windowBackground”:
在“styles.xml”
中<style name="AppTheme" parent="Theme.Holo">
<item name="android:windowBackground">@color/white</item>
</style>
从LinearLayout中删除背景属性。
当然要确保您的活动使用AppTheme作为主题。 (还将@ color / white值设置为“#ffffffff”)