2016-09-20 64 views
-2

我有2個類。在第一個我有2個按鈕和2個字符串。兩個按鈕啓動相同的類。但如果用戶按第一個按鈕我想發送第一個字符串到第二個類的字符串。如果選擇另一個我想發送第二個字符串。android將兩個字符串變量之一分配到另一個類中的一個字符串中

主類

public String sendedUrl; 
String url = "xxx"; 
String url2="yyy"; 

    imageViews[0].setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      sendedUrl=url; 
      Intent intent = new Intent(getApplicationContext(),Second.class); 
      startActivity(intent); 
      finish(); 
     } 
    }); 
    imageViews[1].setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      sendedUrl = url2; 
      Intent intent = new Intent(getApplicationContext(),Second.class); 
      startActivity(intent); 
      finish(); 
     } 
    }); 

二等

MainActivity main = new MainActivity(); 
String Url; 
Url = main.sendedUrl; 
+0

那麼你面臨的錯誤是什麼? – PriyankaChauhan

+2

[我如何在Android上的活動之間傳遞數據?](http://stackoverflow.com/questions/2091465/how-do-i-pass-data-between-activities-on-android) – lubilis

+0

請搜索所以在發佈新的問題之前:) –

回答

1

你需要把它作爲一個額外的:從您的新活動

Intent i = new Intent(this, Second.class); 
i.putExtra("url", sendedUrl); 
startActivity(i); 

然後提取它是這樣的:

Intent intent = getIntent(); 
String url= intent.getExtras().getString("url"); 
0

你必須使用Bundle來傳遞值,如:

imageViews[0].setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      sendedUrl=url; 
      Intent intent = new Intent(getApplicationContext(),Second.class); 
      intent.putExtra("strUrl", url); 
      startActivity(intent); 
      finish(); 
     } 
    }); 
    imageViews[1].setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View view) { 
      sendedUrl = url2; 
      Intent intent = new Intent(getApplicationContext(),Second.class); 
      intent.putExtra("strUrl", url2); 
      startActivity(intent); 
      finish(); 
     } 
    }); 

裏面你Second ActivityOnCreate()

Bundle extras = intent.getExtras(); 
String url= extras.getString("strUrl"); 
0

如果主要和第二類是活動ü可以通過URL意圖。例如

Intent intent=new Intent(this,Second.class); 
intent.putExtra("URL",url)//url2 on 2nd button click 
startActivity(intent); 
finish(); 

,並在第二個活動得到URL

Intent intent=getIntent(); 
String URL=intent.getStringExtra("URL"); 
2

當你創建這個類的成員被設置爲null一個類的實例,如果你還沒有分配任何價值的特定成員那個班。

可以使該成員static,或者您可以使用

intent.putExtra("StringName"); 

通過這個成員其他活動。

相關問題