我的问题是如何在单击按钮后显示按钮的新图像,但条件来自其他类。我是新手,我想知道如何连接其他类的班级。我尝试了意图...
这是我的代码
这是我们问题的课程......
@Override
// TODO Auto-generated method stub
public void onClick(View v) {
String answer = "Marianas Trench";
String answer2 = "marianas trench";
String answer3 = "MARIANAS TRENCH";
String check = input.getText().toString();
if (check.contentEquals(answer)){
tvresult.setText("Correct");
Intent myIntent= new Intent("com.turtleexploration.LEVEL1");
startActivity(myIntent);
}else if (check.contentEquals(answer2)){
tvresult.setText("Correct");
Intent myIntent= new Intent("com.turtleexploration.LEVEL1");
startActivity(myIntent);
}else if (check.contentEquals(answer3)){
tvresult.setText("Correct");
Intent myIntent = new Intent("com.turtleexploration.LEVEL1");
startActivity(myIntent);
}else{
tvresult.setText("Wrong");
}
Intent intObj = new Intent(Question.this, Level1.class);
intObj.putExtra("ANSWER", answer);
startActivity(intObj);
}
这是问题选择课..
ImageButton l1 = (ImageButton) findViewById(R.id.l1);
TextView t1 = (TextView) findViewById(R.id.t1);
Intent intename = getIntent();
String mainans = "Marianas Trench";
String ans = (String) intename.getSerializableExtra("ANSWER");
if (ans == mainans){
l1.getBackground().equals(getResources().getDrawable(R.drawable.m1));
t1.setText("Correct");
}else{
}
该按钮位于问题选择菜单中......
答案 0 :(得分:0)
似乎你没有使用带有数据的Bundle。 Intent仅调用下一个活动。必须包括捆绑包。
像:
Bundle b = new Bundle();
b.putString("ANSWER", answer);
Intent intObj = new Intent(Question.this, Level1.class);
b.putExtras(b);
startActivity(intObj);
并在下一堂课。用这个来传递数据:
Bundle b = new Bundle();
b = getIntent().getExtras();
String Gotanswer = b.getString("ANSWER");
并使用字符串Gotanswer
来使用它。
但还有一件事,如果你想把字符串ANSWER传递给下一个类,那么在这段代码中就不可能了,因为在你的每一个条件中,都有一行开始下一个类,如:
Intent myIntent = new Intent("com.turtleexploration.LEVEL1");
startActivity(myIntent);
执行此操作将启动下一个课程,而不通过下面的intObj
代码。
如果我没弄错的话。 :)
此外,If-Else-If
不是使用switch
,而是使用Kaya yan pre! haha
更好。
当你看到这个答案时,请进一步解释你的问题。
{{1}}