无法在意图中同时传递多个整数

时间:2018-06-17 20:43:54

标签: android android-intent

所以我想在活动之间传递数据,所以我认为应该将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(/^_/, "");

1 个答案:

答案 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。