所以我想在活动之间传递数据,所以我认为应该将3个单独的整数发送到第二个活动,但我不知道为什么,模拟器会不断添加所有这些。基本上,我制作一个应用程序,在我的课程的情况下 - 我需要创建一个应用程序保持得分,在我的情况下,应用程序将保持足球比赛期间的得分,犯规次数和角落数量。要设置数据,我们点击特殊按钮(按分数增加分数等),当我们想要进入第二个活动并看到我们应该看到的详细统计数据,如3个目标,6个犯规,以及团队的2个角落在比赛期间“A”,但是当我点击按钮时(假设是1次进球,2次犯规,3次角球,应用应该像1个球,2个犯规,3个角但是它会继续添加所有整数,它就像6个目标,6个犯规,6个角落。什么可能是错的?
计算活动(这里程序存储整数的值)
public class DeatiledScoreActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_deatiled_score);
int team_a_score_detail_int = 0;
int team_a_foul_detail_int = 0;
int team_a_corner_detail_int = 0;
int team_b_score_detail_int = 0;
int team_b_foul_detail_int = 0;
int team_b_corner_detail_int = 0;
Intent goal_intent = getIntent();
int goal = goal_intent.getIntExtra("", team_a_score_detail_int);
display_a_goal(goal);
Intent foul_intent = getIntent();
int foul = foul_intent.getIntExtra("", team_a_foul_detail_int);
display_a_foul(foul);
Intent corner_intent = getIntent();
int corner = corner_intent.getIntExtra("", team_a_corner_detail_int);
display_a_corner(corner);
}
public void display_a_goal(int score) {
TextView a_score = (TextView) findViewById(R.id.team_a_goal_detail);
a_score.setText(String.valueOf(score));
}
public void display_a_foul(int foul){
TextView a_foul = (TextView) findViewById(R.id.team_a_foul_detail);
a_foul.setText(String.valueOf(foul));
详细活动必须接收我们作为意图从计数活动发送的数据。
name = target.name;
if (!name) // generate name if it was not given
name = name.replace(/\.?([A-Z]+)/g, (x, y) => "_" + y.toLowerCase()).replace(/^_/, "");
答案 0 :(得分:0)
他们不能拥有相同的密钥:
intent.putExtra("",team_a_score);
intent.putExtra("",team_a_foul);
intent.putExtra("",team_a_corner);
所以为了让它成功设置:
intent.putExtra("some",team_a_score);
intent.putExtra("some2",team_a_foul);
intent.putExtra("some4",team_a_corner);
Intent putExtra
方法接受两个参数key - value。