Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在X和Y坐标上放置ImageView_Java_Android_Android Layout_Android Imageview - Fatal编程技术网

Java 在X和Y坐标上放置ImageView

Java 在X和Y坐标上放置ImageView,java,android,android-layout,android-imageview,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();

为什么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布局中声明ImageView吗


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

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

呼叫

    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();
  }

您可以通过将图像放置在父对象的左上角来实现这一点(XML内部的事件)。然后只给它marginTop(这是你的Y)和marginLeft(这是你的X)。

@RichTalcik Margin给你的不仅仅是X,Y的绝对位置。您可以相对于底部,也可以相对于右侧。完成设置后,imageview将隐藏在image1()方法中我的RelativeLayout的背景图像后面