2013-04-16 117 views
0

我得到了三個活動導致相同的活動,其中顯示的數字和一些計算執行取決於它來自哪裏,這一切都很好,當我只有一個額外的每個意圖,但可以說活動一個我需要知道選擇什麼選項,所以我增加了三個額外的。多個額外的意圖

但是,我在活動中添加的這三個額外活動似乎並未在最後的活動中得到認可。

活動一個

if (selectedItem.trim().equals("100mm")) { 
    Total1 = (int) (a * b * 10); 
} 

else if (selectedItem.trim().equals("215mm")) { 
    Total2 = (int) (a * b * 20); 
} 

else if (selectedItem.trim().equals("325")) { 
    Total3 = (int) (a * b * 30); 
} 
else if (selectedItem.trim().equals("hollow ")) { 
    Total4 = (int) (a * b * 10); 
} 
    Intent intent = new Intent(CalculateB.this, 
      WlAmounts.class); 
    intent.putExtra("Result100",Total1); 
    intent.putExtra("Result215", Total2); 
    intent.putExtra("Result325", Total3); 
    intent.putExtra("ResultHollow",Total4); 
    startActivity(intent); 

最後活動

Intent sender = getIntent(); 
    int edge = sender.getExtras().getInt("Result100"); 
    int flat = sender.getExtras().getInt("Result215"); 
    int wide = sender.getExtras().getInt("Result325"); 
    int hollow = sender.getExtras().getInt("ResultHollow"); 
    int opes1 = sender.getExtras().getInt("ResultOpe1"); 
    int opes2 = sender.getExtras().getInt("ResultOpe2"); 

    if (getIntent().hasExtra("Result100")) { 
     answer.setText(edge + ""); 



    } else if (getIntent().hasExtra("Result215")) { 
     answer.setText(flat + ""); 

     //i'm doing some calculations here 

    } else if (getIntent().hasExtra("Result325")) { 
     answer.setText(wide + ""); 

    //i'm doing some calculations here 

      } else if (getIntent().hasExtra("ResultHollow")) { 
      answer.setText(hollow + ""); 

    //i'm doing some calculations here 

      } else if (getIntent().hasExtra("ResultOpe1")) { 
      answer.setText(opes1 + ""); 

    //i'm doing some calculations here 

     } else if (getIntent().hasExtra("ResultOpe2")) { 
      answer.setText(opes2 + ""); 
+0

你的問題是什麼?任何錯誤? –

+0

您是否在發送值之前進行計算?新活動會發生什麼?因爲它認爲只有一個價值,那就是Total1或Total2或Total3或Total4。是嗎? – Gilson

+0

爲什麼result215和result325和resulthollow在相同的代碼適用於剩餘的額外部分時無法識別,我在有四個選項的活動之一上獲得了微調,現在如果選擇顯示所有零的最後三個選項中的任何一個上一次活動。 – Robert

回答

1

只保留一個額外的意向,這將有助於識別呼叫來自哪個活動。然後提取其他各自的意圖

+0

嗨,我明白你的第一部分回答,你能解釋然後提取其他各自的意圖多一點,對不起,我是新來的 – Robert

+1

看到你在LastActivity的問題是它來自哪個活動。因此,如果您從所有調用活動傳遞不同值的共同意圖,那麼在LastActivity中,您可以執行getIntent()。getExtras()。getInt(「common」,0)。根據此通用參數的值,您可以確定LastActivity中的調用活動。之後,您可以根據通用代碼提取所需的參數。 – shiladitya