1

I want to start a new activity with a variable passed in it.

Code so far:

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

Can this be done?

4

2 回答 2

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 是默认值

于 2013-04-24T17:49:22.543 回答
1

假设有两个类,一类是 A,另一类是 B。您想将一些数据从 A 传递到 B。

从 A 类:

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");

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

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

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

现在您将能够在 B 类中使用这些值。

希望这将帮助您“通过传递一些数据开始新活动”。

于 2013-04-24T18:48:14.833 回答