Android:在活动之间传递数据

时间:2015-01-06 11:18:04

标签: android

我正在创建一个名为e-wardrobe的应用程序,用户将填写一些输入,例如"布料"," season"," color"。我希望当用户将冬季写入季节字段时,应用程序会将类型和颜色字符串传递到WinterActivity,但我不知道如何执行此操作。我希望你能帮助我,而不是提前:)

3 个答案:

答案 0 :(得分:0)

您可以检查季节字段,然后确定从该字段开始的Activity,然后将您想要传递的其他信息作为一个包放在intent中。或者更好的是,不要进行冬季活动,只需制作SeasonActivity,然后传递所有其他信息,然后让活动决定它需要的样子以及应该与用户分享的数据。

从A - >传递的数据; B处于意图

但是来自A - > B(对话或第二步) - >通过ActivityForResult完成

答案 1 :(得分:0)

您需要将捆绑数据添加到此类

的启动意图中
//create the intent and bundle
Intent launchIntent = new Intent(
MenuActivity.this, com.you.AnotherActivity.class);
Bundle extraData = new Bundle();

//assign some values to the bundle
extraData.putSerializable("key1", "value");

//assign bundle to launchIntent
launchIntent.putExtra("keyBundle", extraData);

//start the activity
startActivity(launchIntent);

然后检索其他活动中的数据,如下所示:

//create a new intent to put the one that started this activity
Intent intent = getIntent();

//retrieve the bundle that was sent in the intent
Bundle recievedBundle = 
        intent.getBundleExtra("keyBundle");


//get the bundle passed from the activity that started this one
MyVariableInAnotherActivity =  recievedBundle.getSerializable("key1");

答案 2 :(得分:0)

试试这个:

Intent intent  = new Intent(CurrentActivity.this, WinterActivity.class);
intent.putExtra("cloth", clothTextField.getText().toString());
intent.putExtra("color", colorTextField.getText().toString());
startActivity(intent);

在冬季活动中,您收到的内容如下:

String cloth = getIntent().getStringExtra("cloth");
String color = getIntent().getStringExtra("color");

希望它有所帮助!!!