首先,按钮很少。
我为onClick方法中的所有按钮设置了一个开关盒。
我想为所有按钮执行不同的任务,例如
对于添加按钮,我想显示加法问题,减法等相同。
但我想点击按钮开始相同的活动,我的意思是我有一个计数器类,它应该在实际问题开始显示之前启动。
所以点击我想要启动该计数器活动的任何按钮后,显示问题。
@Override
public void onClick(View v) {
Intent Counter = new Intent(this, TYS_Counter.class);
startActivity(Counter);
switch (v.getId()) {
case R.id.BAddition:
break;
case R.id.BSubtraction:
break;
case R.id.BMultiplication:
break;
case R.id.BDivision:
break;
case R.id.BAll:
break;
}
}
我已经这样做了,这是否正确,我不这么认为,所以请指导我。
编辑:
我希望当用户点击任何按钮时,3 2 1的计时器开始,当它完成时,问题的活动就会开始。
由于
答案 0 :(得分:0)
根据我的想法,您希望在计时器到期后显示问题。你有几个选择。一个是你可以使用
Intent Counter = new Intent(this, TYS_Counter.class);
startActivityForResult(Counter); // notice the change here
然后,当您的计时器Activity
完成后,它可以使用setResult()
并将值返回onActivityResult()
然后您可以根据所需的问题启动Activity
。从计时器Activity
发回。
如果您想在计数器到期时启动新的Activity
,那么您可以像这样更改您的代码
@Override
public void onClick(View v) {
Intent Counter = new Intent(this, TYS_Counter.class);
switch (v.getId()) {
case R.id.BAddition:
counter.putExtra("key", "addition");
break;
case R.id.BSubtraction:
counter.putExtra("key", "subtraction");
break;
case R.id.BMultiplication:
counter.putExtra("key", "multiplication");
break;
case R.id.BDivision:
counter.putExtra("key", "division");
break;
case R.id.BAll:
counter.putExtra("key", "whateverThisIs");
break;
}
startActivity(Counter);
}
然后,当您的计数器Activity
完成后,您可以使用额外发送来告诉它Activity
开始