我有一个下面的布局:
Framelayout
有两个ImageView
个。每个ImageView
都有一张图片。
我想要实现的目标是:触摸ImageView
时,触控区域应变为透明并显示下方的图像。
布局XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/rect" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/i2" />
</FrameLayout>
</LinearLayout>
因此,基本上触摸imageView2
触摸区域应显示来自imageView1
的图片。
我只需要一些指针或参考。
答案 0 :(得分:0)
在TouchListener中使用此代码
ImageView view1 = (ImageView)findViewById(R.id.imageView1);
view1.setZOrderOnTop(true); // necessary
SurfaceHolder sfhTrackHolder = view1.getHolder();
sfhTrackHolder.setFormat(PixelFormat.TRANSPARENT);
答案 1 :(得分:0)
首先获取img
的本地变量ImageView myImage2 = (ImageView) findViewById(R.id.imageview2);
确保myImage2上有onClickListener,然后:
@Override
public void onClick(View v) {
int id = v.getId();
if (id == R.id.imageview2) {
myImage2.setAlpha((float) 0.55); //value: [0-1]. Where 0 is fully transparent .and 1 is fully opaque
}