我使用.equals方法将传递的字符串(来自另一个活动)与int进行比较以显示某个图像,并且我不确定.equals方法是否合适。这是我现在使用的代码。不幸的是它不起作用并且一直显示第一张图像!
获取所选listitem的passID:
passedID = getIntent().getStringExtra("ID");
显示图像部分:
if(passedID.equals('1')){
image.setImageResource(R.drawable.image01);
}
else if(passedID.equals('2')){
image.setImageResource(R.drawbale.image02);
}
感谢您的帮助!
答案 0 :(得分:6)
文字String
由双引号("
)括起,而不是单引号('
)。单引号用于文字char
。在您的情况下,您将String
与Character
(从char
自动自动装箱到Character
)进行比较,这将导致false
结果总是。
这就是你的代码的样子:
if(passedID.equals("1")){
image.setImageResource(R.drawable.image01);
}
else if(passedID.equals("2")){
image.setImageResource(R.drawbale.image02);
}
答案 1 :(得分:0)
为什么你不把int
作为额外的?
intent.putExtra("ID", 1);
...
if (intent.getIntExtra("ID", 1) == 1) {
...
} else if (intent.getIntExtra("ID", 1) == 2) {
...
}