我正在为Android制作一个信息应用程序,我无法弄清楚如何根据前一课中按下的按钮来更改按钮。
我制作了这张照片,展示了应用的运作方式:
单击第一个按钮后,您将进入一个带有2个新按钮的新班级,这些按钮会将您发送到同一个班级,但是根据您按下的两个按钮中的哪一个,您应该改变3个按钮发送给你发送到同一个类,但有一个TextView根据你按下的按钮改变文本。
所以我需要在按钮上添加一些信息(意图?),这样它才能知道你之前按下了什么。
我是Java和Android的新手,所以如果我以一种奇怪的方式解释,我很抱歉。
提前致谢
答案 0 :(得分:3)
每次你开始一个新的Activity,但是那个意图中的一些额外内容告诉下一个活动按钮应该显示什么。在下一个活动中,从您获得的意图中读取额外内容,并相应地以编程方式设置按钮的文本。
这是一些伪代码。
public class FirstActivity extends Activity{
//setup button 1 and two first, then set their onClickLiseners like so
View.OnClickListener clickListener = new View.OnClickListener(){
public void onClick(View view){
Intent newActivity = new Intent(FirstActivity.this, SecondActivity.class);
if(view == button1){
//add extra to intent indicating button1 was clicked
}
else{
//add extra to intent indicating button2 was clicked
}
startActivity(newActivity);
}
};
// other stuff in your activity
}
public class SecondActivity extends Activity{
protected void onCreate(Bundle icicle){
Intent startedBy = getIntent();
if(started by has the extra indicating button 1 was clicked){
//do button1 stuff
}
else{
//do button2 stuff
}
}
}
}