如何将变量传递给android中的另一个活动?

时间:2017-04-30 05:50:03

标签: android android-activity

我在主要活动中有2个变量。我需要将这些变量值传递给下一个活动。我能做到吗?

   button.Click += delegate {
   var activity2 = new Intent (this, typeof(Activity2));
   activity2.PutExtra ("MyData", "Data from Activity1");
   StartActivity (activity2);
};

5 个答案:

答案 0 :(得分:4)

创建和意图对象并发送你的数据throw putstring()或putExtra()方法

 Intent intent = new Intent(this, YourClass.class);
 intent.putString("key1", var1);// if its string type
 Intent.putExtra("key2", var2);// if its int type
 startActivity(intent);

在接收方

Intent intent = getIntent();
String var1 = intent.getStringExtra("key1");
int i = var2.getIntExtra("key2", 0);

答案 1 :(得分:1)

使用以下内容从MainActivityActivity2发送数据

Intent activity2 = new Intent(MainActivity.this, Activity2.class);
activity2.PutExtra("MyData", "Data from Activity1");
StartActivity(activity2);

使用以下内容在Activity2中接收数据:

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

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

    if( getIntent().getExtras() != null)
    {
        String myData = getIntent().getStringExtra("MyData");
    }

    ...............
    .....................
}

答案 2 :(得分:0)

您也可以在包中传递值

FirstActivity.java

Intent mIntent = new Intent(this, Example.class); 
Bundle mBundle = new Bundle();
mBundle.putString(key, value);
mIntent.putExtras(mBundle);
startActivity(mIntent )

SecondActivity.java

String value = getIntent().getExtras().getString(key)

捆绑包有"得到"和"放"所有原始类型,Parcelables和Serializables的方法。我只是将Strings用于演示目的。

我认为这会对你有帮助..

答案 3 :(得分:0)

FirstActivity

Intent intent = new Intent(this, Example.class); 
Bundle mBundle = new Bundle();
mBundle.putString(key, value);
intent.putExtras(mBundle);
startActivity(intent);

SecondACtivity

String value = getIntent().getStringExtra(key);

答案 4 :(得分:-1)

您可以使用静态变量进行此操作。

MainActivity.java

public static String nameVariable= "Text";

SecondActivity.java

String textFromMainActivity = MainActivity.nameVariable;