将额外数据从Activity传递给Intent

时间:2012-05-15 13:57:43

标签: java android android-intent android-activity

我使用Activity呼叫Intent,我需要在初始化时将变量传递给Activity。在iOS上,您可以使用initWithNibName方法使用自定义初始化。如何才能在Android上实现类似的功能?

以下是我创建Intent ...

的代码
Intent myIntent = new Intent(webPush.this, webPushActivity.class);
startActivity(myIntent);

4 个答案:

答案 0 :(得分:5)

Intent myIntent = new Intent(webPush.this, webPushActivity.class);
myIntent.putExtra("mystring",strValue)' <<---put String here 
startActivity(myIntent);

并在第二个活动......

String str = getIntent.getExtras().getString("mystring");<<get string in second class

并检查此

How do I pass data between Activities in Android application?

答案 1 :(得分:2)

您可以将额外数据放入Intent ...

myIntent.putExtra("exampleString","This is some extra data");
myIntent.putExtra("exampleNumber",1234);

当您致电Intent时,会启动Activity。在Activity的一个主要方法中,如onCreate(),您可以访问Intent并从中获取额外内容,就像这样......

Intent callingIntent = getIntent();
String exampleString = callingIntent.getStringExtra("exampleString");
int exampleNumber = callingIntent.getIntExtra("exampleNumber");

答案 2 :(得分:1)

您可以为意图设置额外内容:

myIntent.putStringExtra("First key", 1);
myIntent.putStringExtra("Second key", "some string");

然后在新活动

中获取它
Int extraInt = getIntent().getIntExtra("First key");    
String extraString = getIntent().getStringExtra("Second key");

Intent docs

中查看更多内容

答案 3 :(得分:1)

这可以使用intent extras来完成。例如:

int variable = 6;
Intent myIntent = new Intent(webPush.this, webPushActivity.class);
myIntent.PutExtra("stringLabel", variable);
startActivity(myIntent);