我正在构建一个具有一定透明度的 UI。我已经设法让不同的按钮和布局变得透明,所以当我想要有点透明的视图开始表现得很奇怪时,我有点惊讶。
在“设计器”中查看布局时,有问题的视图在 Eclipse 中显示为部分透明。但是当我将它部署到设备(三星 S2、Android 4)时,那个特定的视图会变成纯黑色。
解释它是如何构建的有点混乱,但我会尝试。
首先,我希望它看起来如何(透明度,它在 Eclipse 中的外观):
这是部署到设备时的样子(不透明):
第一个问题:
为什么 Eclipse/designer 与部署的版本不同?我已经清理了几次项目,我已经重新启动了 Eclipse 等。
下一步是看看结构如何。
简化版:
[activity_main] --> [LinearLayout] --> [包括“logobar”]
“logobar”看起来像这样:
<?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="50dp"
android:background="#80000000" >
<RadioGroup
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal" >
<!-- Here is the box, and then the green circle inside the box -->
<FrameLayout
android:layout_width="50dp"
android:layout_height="30dp"
android:layout_marginLeft="10dp"
android:background="@drawable/status_background"
android:padding="0dp" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/bullet_ball_glass_green" />
</FrameLayout>
<!-- end of box -->
<ImageView
android:id="@+id/logo"
android:layout_width="220dip"
android:layout_height="55dip"
android:background="@android:color/transparent"
android:paddingLeft="10dp"
android:src="@drawable/logo_demo" >
</ImageView>
</RadioGroup>
</RelativeLayout>
这是可绘制的“status_background”(分层以获得一些斜面效果):
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
<shape android:shape="rectangle" >
<stroke
android:width="1px"
android:color="#77000000" />
<corners android:radius="5dp" >
</corners>
</shape>
</item>
<item
android:left="1dip"
android:top="1dp">
<shape android:shape="rectangle" >
<stroke
android:width="1px"
android:color="#77ffffff" />
<corners android:radius="5dp" >
</corners>
</shape>
</item>
<item
android:left="1dip"
android:top="1dp">
<shape android:shape="rectangle" >
<solid android:color="#11FFFFFF"/>
<corners android:radius="5dp" >
</corners>
</shape>
</item>
</layer-list>
那么第二个问题: 谁能告诉我我在这里做错了什么?=) 谢谢