1

我正在尝试将简单的渐变背景应用于我的主要 LinearLayout。我的问题是背景拒绝留在背景中,而是决定也覆盖我的视图(在这种情况下为 TextViews 和 Buttons)。我做错了什么/我错过了什么?谢谢你的帮助!

主要布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/mainLinearLayout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg_gradient"
android:orientation="vertical" 
>

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Select the PC to communicate with..." />

<TextView
    android:id="@+id/textViewStatus"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Status" />

<RadioGroup
    android:id="@+id/radioGroupDevices"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

</RadioGroup>  

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >

    <Button
        android:id="@+id/btnBack"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="&lt;&lt;" />

    <Button
        android:id="@+id/btnVolDown"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="-" />

    <Button
        android:id="@+id/btnPlayPause"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="|>" />

    <Button
        android:id="@+id/btnVolUp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="+" />

    <Button
        android:id="@+id/btnNext"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text=">>" />

   </LinearLayout>

</LinearLayout>

可绘制/bg_gradient.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient android:angle="270" android:endColor="#181818" android:startColor="#616161"/>

    <stroke android:width="1dp" android:color="#343434" />
</shape>

结果(来自 Eclipse xml 编辑器的屏幕截图,但在实际手机上看起来相同) http://s14.directupload.net/images/130415/q8q6hcmn.png

如您所见,文本行和按钮似乎至少部分被背景覆盖。我也尝试使用普通的黑色背景,但结果相同。所有视图都在黑雾后面显得“模糊”。

4

2 回答 2

1

看来您正在为 android 版本 3 或更高版本进行开发......所以在这个版本和主题之上的版本中设置了诸如控件似乎具有透明背景......

尝试将控件(按钮,文本视图)背景更改为一些哈希颜色值

例如:-android:background="#ffaaff"

现在你不需要改变你的代码......试一试吧......

对于您的按钮,请将其放入您的代码中以使其透明...

v.setBackgroundColor(0x0000FF00 );

希望这对你有用

于 2013-04-15T21:15:48.473 回答
0

我没有看到你的按钮被你的渐变污染。至于最上面的文本 - 默认情况下 TextView 背景是透明的,因此可以通过它看到容器的背景,这是正常的。

于 2013-04-15T20:44:25.947 回答