如何在Android上的ImageView上的半透明背景上获取纯文本?

时间:2014-06-23 22:00:35

标签: android imageview

What I am trying to do

  • 我可以使用图像转换类为Picasso的图像获取圆角。
  • 但是如何在translucent上的ImageView背景上获取纯文字 如下图所示?
  • 我想知道如何以编程方式和XML方式实现这一目标。

enter image description here

My XML

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

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:gravity="center"
        android:orientation="vertical" >

        <RelativeLayout
            android:layout_width="100dp"
            android:layout_height="100dp"
            android:orientation="vertical"
            android:padding="2dp" >

            <ImageView
                android:id="@+id/item_image"
                android:layout_width="100dp"
                android:layout_height="100dp"
                android:padding="1dp"
                android:scaleType="fitXY" />

            <LinearLayout
                android:layout_width="75dp"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_alignParentLeft="true"
                android:orientation="vertical" >

                <LinearLayout
                    android:id="@+id/menuLayout"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="left"
                    android:layout_margin="1dp"
                    android:orientation="vertical" >

                    <TextView
                        android:id="@+id/menu_type_name"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:gravity="left"
                        android:text="Small Text"
                        android:textColor="@color/cBlue"
                        android:textSize="12sp" />
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/itemLayout"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="left"
                    android:layout_margin="1dp"
                    android:orientation="vertical" >

                    <TextView
                        android:id="@+id/item_name"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:gravity="left"
                        android:text="Small Text"
                        android:textColor="#FFFFFF"
                        android:textSize="12sp" />
                </LinearLayout>
            </LinearLayout>
        </RelativeLayout>
    </LinearLayout>

</LinearLayout>

1 个答案:

答案 0 :(得分:1)

这是以编程方式执行的操作:

ImageView myImage = (ImageView) findViewById(R.id.yourImage);
myImage.setAlpha(125); //value: [0-255]. Where 0 is fully transparent and 255 is fully opaque

这是你用XML格式的方法:

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/wowimage"
    android:alpha=".55"/>