在X和Y坐标上放置图像视图

时间:2013-04-30 13:18:37

标签: java android android-layout android-imageview

为什么ImageView不会沿着x和y坐标放置。我使用相对布局,但由于某种原因,imageView位于相对布局的左上角,并且它没有定位到确定的X和Y坐标。

rel1 = (RelativeLayout) findViewById(R.id.canvas_container);
mImageView1 = (ImageView) findViewById(R.id.imageView1);
image1();

public void image1(){
    //randomNumber();
    mImageView1 = (ImageView) findViewById(R.id.imageView1);
    mImageView1.setBackgroundResource(R.drawable.spelling_);
    mImageView1.layout(130, 140, 240, 120);
    mImageView1.bringToFront();      
}

xml代码将在

之下
<RelativeLayout
    android:id="@+id/canvas_container"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/magnetboard" >
    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

我不应该在XML布局中声明ImageViews吗?

此外,如果您能提供资源,我们将不胜感激。我搜索了很多,无法破译任何可以解决我问题的东西。

3 个答案:

答案 0 :(得分:0)

尝试设置imageView的填充/边距,这通常在RelativeLayouts中处理得更好。

答案 1 :(得分:0)

致电

    mImageView1.requestLayout();
设置完成后

 public void image1(){

  mImageView1 = (ImageView) findViewById(R.id.imageView1);
  mImageView1.setBackgroundResource(R.drawable.spelling_);
  mImageView1.layout(130, 140, 240, 120);
  mImageView1.bringToFront();
     mImageView1.requestLayout();
  }

答案 2 :(得分:0)

您可以通过将图像定位在父级的左上角来实现此功能(XML中的事件)。然后给它marginTop(这将是你的Y)和marginLeft(这将是你的X)。