2013-02-01 74 views
2

我做了一個包含2個活動的應用程序,其中第一個活動包含一些EditTexts(十進制數字),另一個活動性也包含一些Edtitexts(十進制),現在我想將一個EditText的值傳遞給另一個,但作爲「雙」而不是字符串。因爲這些值將用於數學計算。我希望嚴格按照「雙倍」的價值。 我試過如下:但不知道如何將字符串轉換爲「double」。如何從一個活動檢索Double值到另一個?

activity1.java

final Double d1; 
     final Double d2; 
     final Double d3; 
     final Double d4; 
     final Double d5; 
     final Double d6; 
     final Double d7; 
     final Double d8; 
     d1=Double.parseDouble(et1.getText().toString()); 
     d2=Double.parseDouble(et2.getText().toString()); 
     d3=Double.parseDouble(et3.getText().toString()); 
     d4=Double.parseDouble(et4.getText().toString()); 
     d5=Double.parseDouble(et5.getText().toString()); 
     d6=Double.parseDouble(et6.getText().toString()); 
     d7=Double.parseDouble(et7.getText().toString()); 
     d8=Double.parseDouble(et8.getText().toString()); 
. 
. 
. 
. 
Intent ic = new Intent(Calculator_1Activity.this,Calculator2a.class); 
     ic.putExtra("doubleValue_e1", d1); 
     ic.putExtra("doubleValue_e2", d2); 
     ic.putExtra("doubleValue_e3", d3); 
     ic.putExtra("doubleValue_e4", d4); 
     ic.putExtra("doubleValue_e5", d5); 
     ic.putExtra("doubleValue_e6", d6); 
     ic.putExtra("doubleValue_e7", d7); 
     ic.putExtra("doubleValue_e8", d8); 

     startActivity(ic); 

Activity2.java

Intent receiveIntent = this.getIntent(); 
     e1 = receiveIntent.getDoubleExtra("doubleValue_e1", 0.00); 
     e2 = receiveIntent.getDoubleExtra("doubleValue_e2", 0.00); 
     e3 = receiveIntent.getDoubleExtra("doubleValue_e3", 0.00); 
     e4 = receiveIntent.getDoubleExtra("doubleValue_e4", 0.00); 
     e5 = receiveIntent.getDoubleExtra("doubleValue_e5", 0.00); 
     e6 = receiveIntent.getDoubleExtra("doubleValue_e6", 0.00); 
     e7 = receiveIntent.getDoubleExtra("doubleValue_e7", 0.00); 
     e8 = receiveIntent.getDoubleExtra("doubleValue_e8", 0.00); 

     Calculator_1Activity cal1 = new Calculator_1Activity(); 
     et1.setText(cal1.et1.getText().toString()); 

我都試過,但還是沒有working.my項目停止,意想不到的..

+0

可能的重複[將double值傳遞給differen t class in Android Java](http://stackoverflow.com/questions/9588026/passing-a-double-value-through-to-a-different-class-in-android-java) –

回答

0

Double.parseDouble(String s)使用Bundle將信息從一個活動傳遞到其他活動。

+0

jachu-can u pls give我的代碼? –

+0

http://www.remwebdevelopment.com/dev/a33/Passing-Bundles-Around-Activities.html – Jachu

0

解析你的雙轉換爲字符串,投入到捆綁,並得到解析返回字符串中的另一個活動

4

發送雙人房的第一項活動:

Intent sendingIntent = new Intent(this,SecondActivity.class); 
intent.putExtra("doubleValue_e1", doubleData); 
intent.putExtra("doubleValue_e2", doubleData); 
intent.putExtra("doubleValue_e3", doubleData); 
intent.putExtra("doubleValue_e4", doubleData); 
startActivity(sendingIntent); 

在第二個活動接收雙:

double e1,e2,e3,e4; 
Intent receiveIntent = this.getIntent(); 
e1 = intent.getDoubleExtra("doubleValue_e1", defaultValue) 
e2 = intent.getDoubleExtra("doubleValue_e2", defaultValue) 
e3 = intent.getDoubleExtra("doubleValue_e3", defaultValue) 
e4 = intent.getDoubleExtra("doubleValue_e4", defaultValue) 
+0

我的朋友謝謝,但你能告訴我如何發送多個值從1 activtiy到另一個活動? –

+0

意圖更多的額外。您可以通過意向發送多個值 – SKT

+0

其如此簡單的新手:),只是看到更新的答案。 –

相關問題