如何让ImageView点击改变另一个ImageViews背景图片

How to make ImageView click change another ImageViews background image

如何让图像视图的按下改变另一个图像视图的背景图像?

我的代码一直给我一个空指针异常错误,但我不知道为什么。

java代码

ImageView imageview2 = (ImageView) findViewById(R.id.imageview2);
public void onclickname(View v) {
    imageview2.setImageResource(R.drawable.example);}

可点击的图片视图

<ImageView
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:clickable="true"
        android:src="@drawable/example"
        android:id="@+id/imageview1"
        android:onClick="onclickname"/>

我想更改背景图片的 imageview。

<ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/red"
        android:id="@+id/imageview2"/>

imageview1 and imageview2 are in separate activities.

这就是您得到空指针的原因 exception.The 您的 activity 布局找不到图像视图(它没有出现在屏幕上)。 并且您的 imageview2 始终为空。

如果您尝试更改不在当前 Activity 中的 View 的背景(不可见),那么您可以存储一个标志(布尔值)或一些 int 计数器可以使用 putExtra 传递给下一个 activity。

然后在第二个 Activity 的 onCreate 中,您可以使用 if 语句检查初始化 imageview2 后使用 getExtra 设置背景的内容。

我认为那是你得到的 nullPointerException