如何在图像上放置视图?

时间:2011-05-12 15:39:35

标签: android view

我正在尝试制作可点击的图片,但图片上有许多可点击的图片。 我认为最好的方法是创建一组视图,它将保持在图像上方并且可以点击。

但是我很难把它们放在正确的位置。

有没有人知道如何制作这个?

3 个答案:

答案 0 :(得分:0)

您需要查看FrameLayout和Z顺序,就像这个问题的答案一样here

希望这就是你要找的东西!

答案 1 :(得分:0)

你可以改为做

之类的事吗
imageView.setOnTouchListener(new View.OnTouchListener()
{
  @Override
  public boolean onTouch(View v, MotionEvent event)
  {
    if (event.getAction() == MotionEvent.ACTION_DOWN)
    {
       // event.getX() and event.getY() give you the co-ordinate
       // of the touch, and from that you can work out which thing
       // has been touched and so what to do?
    }
  }
});


一个愚蠢的relativelayout示例,在TextView上放置三个包含图标的图像视图,其中包含大量文本:

<?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="fill_parent">
    <TextView android:id="@+id/textView1" android:text="TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView TextView " android:layout_alignParentTop="true" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
    <ImageView android:id="@+id/imageView1" android:src="@drawable/icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true"></ImageView>
    <ImageView android:id="@+id/imageView2" android:src="@drawable/icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_marginLeft="10dp"></ImageView>
    <ImageView android:id="@+id/imageView3" android:src="@drawable/icon" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_marginLeft="25dp" android:layout_marginTop="35dp"></ImageView>    
</RelativeLayout>

请注意,z顺序是由xml中的顺序定义的,因此文件中的内容越远,显示内容就越高。

答案 2 :(得分:0)

将实现OnClickListener接口应用于它

ImageView imageView = (ImageView)findViewById(R.id.imageView);

imageView.setOnClickListener(new OnClickListener() {
    public void onClick(View arg0){     
        //YOUR CODE HERE
    }   
})