2013-04-24 64 views
1

我想用一個傳入的變量開始一個新的活動。Android,開始一個新的活動並將其傳遞給變量

到目前爲止的代碼:

if(mostLikelyThingHeard.toUpperCase().equals("PLAY ONE")) 
{ 
    startActivity(new Intent("com.shaz.new")); 
    //I want to send an int value `1` to the new activity. 
} 

可以這樣做?

+1

這如何:http://stackoverflow.com/questions/2091465/how-do-i-pass-data-between-activities-in-android – cakil 2013-04-24 17:48:54

+3

老實說,這是非常基本的Android ...我建議你開始閱讀開發人員培訓部分(http://developer.android.com/training/index.html) – Joris 2013-04-24 17:51:13

回答

7

使用putExtra(key, value)

做這樣

if(mostLikelyThingHeard.toUpperCase().equals("PLAY ONE")) 
    { 
    Intent i=new Intent("com.shaz.new"); 
    i.putExtra("key","value") 
    startActivity(i); 
    } 

檢索:

int value =getIntent().getIntExtra("key", 0); 0是默認值

+0

我應該用「1」替換值嗎? – userxxx 2013-04-24 17:51:11

+0

@ShivamBansal毫無疑問.. – Pragnani 2013-04-24 17:51:38

+0

以及如何在新的活動中檢索這個?非常感謝你 – userxxx 2013-04-24 17:52:20

1

假設有有兩個階級一個A和另外一個是B.您想要將某些數據從A傳遞給B.

從類答:

Intent result = new Intent(A.this,B.class); 

result.putExtra("videoId", videoId); 

result.putExtra("title",titleEdit.getText().toString()); 

result.putExtra("des", descriptionEdit.getText().toString()); 

result.putExtra("gps", passingGPS); 

startActivity(result); 

通過上面的代碼,你必須從A開始B活性,並已通過一些數據。當B活動開始時,您必須獲得您在從A班級調用B班時所傳遞的那些數據。你必須按照這種方式來獲得你已經通過的A類的價值。

從B類:

VideoID = getIntent().getExtras().getString("videoId").toString(); 

GPS = getIntent().getExtras().getString("gps").toString(); 

Description = getIntent().getExtras().getString("des").toString(); 

Title = getIntent().getExtras().getString("title").toString(); 

現在,您將能夠在B類使用這些值

希望這將幫助你「與通過一些數據開始一個新的活動」。

相關問題