我的主要活动上有几个按钮,我希望每当用户按下按钮时,应用程序只能打开一个按钮。我对Android非常陌生,所以我想知道如何按每次点击按钮打开一个活动?这是我目前的代码:
public class MainActivity3Activity extends Activity implements OnClickListener {
Button ViewGradesActivity;
Button ClassScheduleActivity;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main_activity3);
ViewGradesActivity = (Button) findViewById(R.id.viewgrades);
ViewGradesActivity.setOnClickListener(this);
ClassScheduleActivity = (Button) findViewById(R.id.classSched);
ClassScheduleActivity.setOnClickListener(this);
}
@Override
public void onClick(View view) {
Intent viewgrades = new Intent(this, ViewGradesActivity.class);
Intent classsched = new Intent(this, classSchedule.class);
startActivity(viewgrades);
startActivity(classsched);
}
}
使用上面的代码,每当我触摸查看成绩的按钮时,第二个活动(课程表)似乎也会打开。我的意思是每当我按下按钮,就会打开两个活动。我该怎么办?
感谢您的帮助:D
答案 0 :(得分:1)
每个setOnClickListener
都需要拥有自己的点击监听器。这将解决您的问题。
ClassScheduleActivity.setOnClickListener(new View.OnClickListener() ... );
等
(或上面的@ nr4bt解决方案也可以使用)
答案 1 :(得分:1)
您还可以在onClick
中进行条件检查@Override
public void onClick(View view) {
switch(view.getId()){
case R.id.viewgrades:
startActivity(new Intent(this, ViewGradesActivity.class));
break;
case R.id.classSched:
startActivity(new Intent(this, classSchedule.class));
break;
}
}