这个问题已经在这里有一个答案:
- 如何从一个活动传递一个对象到另一个Android上 31个回答
我是新,几乎没有关于Java和XML知识到Android。 我正在学习它通过我获得净我的PDF文件。 我已经了解了面包,一点关于意图,但我无法理解有关捆绑任何东西。 我已经认识到它们被用来传递从一个活动到另一个数据,但我没能实现这一点。
请举一个简单的例子来实现相同的。
作为例子,我刚刚创建了两个活动,即Main_Activity和Other_Activity,而我没有做什么他们没有。
请给出最简单的例子,这样我可以学习来实现。
提前致谢!!
例如 :
在MainActivity:
Intent intent = new Intent(this, OtherActivity.class);
intent.putExtra(OtherActivity.KEY_EXTRA, yourDataObject);
startActivity(intent);
在OtherActivity:
public static final String KEY_EXTRA = "com.example.yourapp.KEY_BOOK";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String yourDataObject = null;
if (getIntent().hasExtra(KEY_EXTRA)) {
yourDataObject = getIntent().getStringExtra(KEY_EXTRA);
} else {
throw new IllegalArgumentException("Activity cannot find extras " + KEY_EXTRA);
}
// do stuff
}
这里更多的信息: http://developer.android.com/reference/android/content/Intent.html
试试这个:如果您需要使用此活动之间传递值...
这是Main_Activity代码把值意图
String name="aaaa";
Intent intent=new Intent(Main_Activity.this,Other_Activity.class);
intent.putExtra("name", name);
startActivity(intent);
此代码为Other_Activity和获取值形成意图
Bundle b = new Bundle();
b = getIntent().getExtras();
String name = b.getString("name");
基本上,这就是你需要做的:
在第一个活动:
Intent intent = new Intent();
intent.setAction(this, SecondActivity.class);
intent.putExtra(tag, value);
startActivity(intent);
并且在第二activtiy:
Intent intent = getIntent();
intent.getBooleanExtra(tag, defaultValue);
intent.getStringExtra(tag, defaultValue);
intent.getIntegerExtra(tag, defaultValue);
的一开始的功能之一会给你回报的价值,这取决于你正在经历的数据类型。