1

嗨,我有两项活动要参加一项活动。打开活动时,两个活动中的任何一个都会显示一个数字

我需要知道数字的来源,以便进行适当的计算,我想我需要一个 if 语句,但不知道如何开始

Intent intent = new Intent(calculateA.this,
    WAmounts.class);
    intent.putExtra("Result",Total);
    startActivity(intent);


Intent intent = new Intent(CalcB.this,
    WAmounts.class);
    intent.putExtra("ResultB",Total);
        startActivity(intent);

第三次活动

 Intent sender = getIntent();
    int result = sender.getExtras().getInt("Result");
    answer.setText(result+"");


    int resultB = sender.getExtras().getInt("ResultB");
    answer.setText(resultB+"");

//If number came from first activity  

    a = Integer.parseInt (answer.getText().toString());
    total = (float) (a *x); 
    sd.setText(String.format("%.1f" ,total));



    b = Float.parseFloat (sand.getText().toString());
    total1 = (int)Math.ceil (b*f);
    c.setText(Integer.toString(total1));

  //If number came from second activity     

  a = Integer.parseInt (answer.getText().toString());
  total = (float) (a *x); 
  sd.setText(String.format("%.1f" ,total));



  b = Float.parseFloat (sand.getText().toString());
  total1 = (int)Math.ceil (b*f);
  c.setText(Integer.toString(total1));
4

2 回答 2

3

只需传递一些“附加”,如下所示:如何在 Android 应用程序中的活动之间传递数据?

intent.putExtra("yourLabel", "text1");

然后在新的活动中使用

if (extras != null) {
    String value = extras.getString("yourLabel");
}
于 2013-04-09T20:23:41.423 回答
1

由于您将附加功能称为“result”和“resultB”,因此您可以使用 sender.hasExtra("result"),如果它返回 false - 您知道哪个活动启动了此意图。

请注意,代码中的 bot sender 和 sender1 具有相同的意图 - 启动此活动的意图。你不必得到它两次。

于 2013-04-09T20:21:46.140 回答