Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.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
Android 在运行时更改图像位置_Android_Image - Fatal编程技术网

Android 在运行时更改图像位置

Android 在运行时更改图像位置,android,image,Android,Image,我想在运行时更改ImageView的位置。我将imageView放在FrameLayout中。我的主要布局是相对布局 我尝试了很多方法,但总是出现空指针异常 上次我试过这个: FrameLayout.LayoutParams par; image.setImageResource(R.drawable.im1); par = (FrameLayout.LayoutParams)image.getLayoutParams(); par.setMargins(100,

我想在运行时更改ImageView的位置。我将imageView放在FrameLayout中。我的主要布局是相对布局

我尝试了很多方法,但总是出现空指针异常

上次我试过这个:

    FrameLayout.LayoutParams par;
    image.setImageResource(R.drawable.im1);
    par = (FrameLayout.LayoutParams)image.getLayoutParams();
    par.setMargins(100,100,0,0);

    image.setLayoutParams(par);
imageView的xml:

    <ImageView
        android:layout_width="42dp"
        android:layout_height="40dp"
        android:id="@+id/im1"
        android:contentDescription=""
        android:src="@drawable/im1"/>

我想了些什么。SetX和SetY改变了位置,但它们只在主类的OnCreate方法中工作。我想将这个imageview对象发送到另一个类,并在函数中使用它。当我使用它时,它不会给出任何错误,但不会改变位置

尝试使用findViewById初始化映像。。。如果你没有。。 或者只使用setY和setX

image = (ImageView) findViewById(R.id.markerImage)

您的xml中没有名为im1的id,因此引发NullPointerException

哪一行导致nullpointer?我不知道。我试着评论每一行,但总是给出一个错误。看看你的日志。它会告诉你在哪一行得到NullPointerException。我想它会给每一行加上图片。我在onCreate方法中像image=ImageView findviewbydr.id.im1一样初始化它我在onCreate方法中初始化它。我试着只用setX,但它也不起作用。那么,您是否确保您的视图没有锚定在xml布局中?例如,设置为水平和垂直居中的视图不能移动。我为imageView添加了xml。有什么问题吗?您能添加xml声明吗?我稍后会更改id,以了解错误。我不能在这里更改我的旧代码,所以我在这里复制时更改了我的新更新代码。对不起,我忘记换了。