仅在Galaxy设备上使用TextView背景黑色

时间:2015-05-12 21:41:16

标签: android android-layout textview android-xml

在Galaxy S2& S3,我的textview的背景颜色是黑色,而在其他所有设备上它是透明的,这就是我想要的。如何修复它以使textview在所有设备上都是透明的?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TextView
        android:id="@+id/desc"
        android:layout_width="fill_parent"
        android:layout_height="40dip"
        android:layout_alignParentRight="true"
        android:layout_below="@+id/title"
        android:background="@drawable/descshape02"
        android:ellipsize="marquee"
        android:fadingEdge="horizontal"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:lines="1"
        android:marqueeRepeatLimit="marquee_forever"
        android:paddingLeft="7dip"
        android:paddingRight="7dip"
        android:paddingTop="10dip"
        android:singleLine="true"
        android:shadowColor="#000000"
        android:shadowDx="0"
        android:shadowDy="0"
        android:shadowRadius="5"
        android:textColor="#FFFFFF"
        android:textSize="15dip" >

        <requestFocus />
    </TextView>

</RelativeLayout>

和descshape02.xml -

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

    <corners
        android:bottomLeftRadius="0dp"
        android:bottomRightRadius="0dp"
        android:topLeftRadius="0dp"
        android:topRightRadius="0dp" />

    <gradient
        android:angle="90"
        android:endColor="#070805"
        android:startColor="#B8833F"
        android:type="linear" />

    <padding
        android:bottom="0dp"
        android:left="0dp"
        android:right="0dp"
        android:top="0dp" />

    <size
        android:height="30dp"
        android:width="270dp" />

    <stroke
        android:width="1dp"
        android:color="#877B10" />

</shape>

编辑:

好的,这可能只是模拟器中的一个错误,但我在Galaxy设备上有黑色背景的原因是shadowColor属性。在所有其他设备上,shadowColor属性在文本周围显示发光,在Galaxy设备上,它是整个textview元素周围的纯色。仍然不确定如何解决这个问题,所以任何黑客或解决方法都会受到高度赞赏。

2 个答案:

答案 0 :(得分:0)

我真的不明白为什么会这样做。
你在使用模拟器吗?
如果是,在我看来,它只是模拟器错误。

答案 1 :(得分:0)

使用:

android:background="@android:color/transparent"

对于透明背景,或者在您正在使用的可绘制颜色的颜色开头添加Alpha通道? Alpha通道的不透明度非常低的示例:

android:endColor="#33070805"
android:startColor="#33B8833F"