你好我有两个活动去参加一项活动。当活动打开时,从两个活动中的任何一个显示一个数字
我需要知道数字的来源,以便我可以进行适当的计算,我想我需要一个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));
答案 0 :(得分:2)
只需传递一些“附加内容”,如下所示:How do I pass data between Activities in Android application?
intent.putExtra("yourLabel", "text1");
然后在新活动中使用
if (extras != null) {
String value = extras.getString("yourLabel");
}
答案 1 :(得分:1)
因为你打电话给你的演员"结果"和"结果B"你可以使用sender.hasExtra(" result"),如果它返回false - 你知道哪个活动开始了这个意图。
请注意,代码中的bot发送者和发送者1具有相同的意图 - 启动此活动的意图。你不必两次得到它。