在辅助活动android中传递值

时间:2017-05-18 06:52:58

标签: android android-activity static

我在我的Android项目中创建了另一个活动。我使用这段代码执行它(这是在我的主要活动中写的):

activity2 = new Intent(MainActivity.this, SecondaryActivity.class);
startActivity(activity2);

问题是我需要将值传递给新活动。我已经完成了在辅助活动中创建public static值。我可以用不同的方式吗?

3 个答案:

答案 0 :(得分:2)

使用Intent extras:

Intent intent = new Intent(MainActivity.this, SecondaryActivity.class);
intent.putExtra("keyName","value");
startActivity(intent);

然后在SecondaryActivity的onCreate方法中,获取如下值:

String data = getIntent().getExtras().getString("keyName");

答案 1 :(得分:1)

试试这样。

Intent activity2 = new Intent(MainActivity.this, SecondaryActivity.class);
activity2.putExtra("key", "value")
startActivity(activity2);

在SecondaryActivity.class

 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //getData using key
    String value = getIntent().getStringExtras("key");
}

答案 2 :(得分:1)

您可以使用Intent extrasvalue传递给SecondaryActivity

发送

// MainActivity.java

Intent intent = new Intent(MainActivity.this, SecondaryActivity.class);
intent.putExtra("KEY_VALUE", "Some value");
startActivity(intent);

<强> RECEIVE:

// SecondaryActivity.java

@Override 
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    .........
    ..................

    String value = "";
    if(getIntent().getExtras() != null)
        value = getIntent().getExtras().getString("KEY_VALUE");

    // Do something with value
}