此程序将图形交换为图像和按钮。交换按钮上的图形可以正常工作,但是交换图像上的图形会使程序崩溃。为了解决这个问题,我仍然无法理解为什么它不能运行。
import android.widget.ImageButton;
import android.widget.ImageView;
public void blackButtons(View v3) {
ImageButton blue = (ImageButton) v3.findViewById(R.id.bluebuttonclick);
ImageView r1 = (ImageView) v3.findViewById(R.id.test1);
if (v3 == blue){
blue.setImageResource(R.drawable.blackbtimage);
r1.setImageResource(R.drawable.bluebtimage);
}
}
答案 0 :(得分:0)
如果v3是其父级,则只能找到r1。这意味着如果v3是您在if(v3 == blue)
上确认的图像按钮,则无法从v3中找到r1。如果在活动内部调用函数,请尝试使用ImageView r1 = (ImageView) findViewById(R.id.test1);
,该布局必须在其xml文件中定义ImageView。
你的代码应该在r1.setImageResource(R.drawable.bluebtimage);