如何按下图像视图更改另一个图像视图背景图像?
我的代码一直给我一个空指针异常错误,但我不知道为什么。
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"/>
答案 0 :(得分:0)
imageview1和imageview2处于不同的活动中。
这就是为什么你得到空指针异常。你的活动的布局找不到图像视图(它没有出现在屏幕上)。
并且您的imageview2
始终为空。
答案 1 :(得分:0)
如果您正在尝试更改当前View
中不存在的Activity
的背景(不可见),那么您可以存储一个标志(布尔值)或一些可以通过的int计数器使用putExtra
进行下一个活动。
然后在第二个Activity
的onCreate中,您可以使用if
语句检查在初始化imageview2后使用getExtra
设置背景的内容。
我认为那是你得到的nullPointerException
。