2012-12-24 48 views
0

我有一個應用程序需要一個字符串來計算一些算法。它工作正常。 現在我正在嘗試從主要活動調用此活動,因此主要活動需要用戶輸入來覆蓋第二個活動中的字符串。我在主活動中有一個可編輯字段。我無法將主活動的值傳遞給第二個活動。我怎樣才能做到這一點?我的主要活動代碼看起來像使用傳遞一個活動的值以覆蓋另一個活動的值

Intent i = new Intent(this, themain.class); 

i.putExtra("Name",setname); // replace here with setname 
startActivityForresult(i,1); 
+2

問題是? –

+0

我無法將主要活動的值傳遞給第二個。我怎樣才能做到這一點 – user1925872

+0

因此,你無法通過這個i.putExtra(「Name」,insertname)傳遞這個insertname的值。 ? – Kanth

回答

1

嘗試,您可以發送您的字符串從你的活動活性2如下:

String str = "My Data"; //Data you want to send 
Intent intent = new Intent(FirstActivity.this, SecondActivity.class); 
intent.putExtra("name",str); 
startActivityForresult(i,1); 

您可以在收到STR activity2如下:

String name = this.getIntent().getStringExtra("name"); 
+0

好的我怎麼能在我的活動中得到這個? – user1925872

+0

在你的代碼中,你傳入'insertname',只需要替換'setname'即可。 'insername'是edittext的對象,'setname'是該edittext的值。 –

+0

已經做到了這一點,但我仍然無法得到這個在我的活動中串起來的字符串.. – user1925872

0

public void onClick(View view){ 
     switch (view.getid()) 

    case R.id.calculate: 

    setname= insertname.getText.toString(); //insertname is the Editablefield 
    Intent i = new Intent(this, themain.class); 

    i.putExtra("Name",insertname); // 
    startActivityForresult(i,1); 

    } 

protected void onActivityResult(int requestCode, int resultCode,Intent data) { 
    super.onactivityresult(requestcode resultcode data); 
    switch (requestcode){ 

    case 1: 
    //return result form activity 2 
    } 
    } 

// Code for second activity is something like this: 

public void onClick(View view) { 
    switch (view.getid()) { 

    case R.id.calculate: 
     break; 
    /* 
    * this bit of code takes a string and gets data for this user and 
    * returns it in an array. I am trying to overwrite this string 
    */ 

    } 
} 
+0

工作,謝謝很多人:) – user1925872

+0

歡迎:) – 2012-12-24 04:22:49

相關問題