制作复杂的视图"渐变"透明

时间:2015-06-30 10:23:13

标签: android

如何使复杂视图(其中有自己的背景,imageview和textview)渐变透明?例如,此视图的前半部分具有正常颜色,但第二部分从正常颜色变为透明颜色?

我不能透明这个项目的背景,因为内部元素不会透明。所以我需要有点"透明过滤器"对于这个观点。甚至可能吗?

更具体一点:我有一个带有listview的小部件。我需要最后一个列表项是半透明的。因此用户可以通过它看到壁纸。这个列表项很复杂,它有很多小视图。

1 个答案:

答案 0 :(得分:0)

使用RelativeLayout

复杂的设置:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="@dimen/number_picker_row_height"
    android:background="@android:color/white">
    <TextView
        android:id="@+id/textView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
    <View
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@drawable/gradient_bg"/>
    <View
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:background="@drawable/image" />     
</RelativeLayout>
在grad_bg中

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#55ffffff"
        android:centerColor="#00ffffff"
        android:endColor="#ffffffff"
        android:angle="0"
        android:dither="true"
        />
</shape>

这将在任何TextView上实现渐变效果,您还可以在RelativeLayout上设置任何背景,并在渐变背景之上添加任何图像视图。

希望它有所帮助!