Android - Gradient Weirdness

Jos*_*osh 2 android gradient drawable

我有一个GridView的"Tiles",每个都有以下android:background属性:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >

    <gradient
        android:endColor="#00FFFFFF"
        android:gradientRadius="180"
        android:startColor="#55FFFFFF"
        android:type="radial" />

</shape>
Run Code Online (Sandbox Code Playgroud)

当可滚动网格最初呈现时,图块看起来像这样:

在此输入图像描述

向下滚动列表后,即使只是一个像素,所有的图块都会有这个新的,像素化的外观渐变:

在此输入图像描述

渐变位于相对布局上,定义如此(其中包含一个用于星形的ImageView,TextView等):

<RelativeLayout
    android:id="@+id/tile_image_layout_gradient"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/radialbg"
    android:orientation="vertical"
    android:paddingBottom="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:paddingTop="20dp" />
Run Code Online (Sandbox Code Playgroud)

这款破解的手机是Experia,运行Android 2.3.4.Galaxy S3似乎渲染得很好,但任何基于4.x的x86仿真器也会产生相同的伪像问题.

Pio*_*cki 6

请尝试在您的onCreate()方法中设置此项setContentView():

getWindow().setFormat(PixelFormat.RGBA_8888);
Run Code Online (Sandbox Code Playgroud)

你也可能需要在这种情况下以编程方式设置背景,而不是通过xml.