是否有可能以某种方式启动具有给定内容的活动?

时间:2012-04-28 19:06:41

标签: android android-activity

我必须使用应该启动相同活动的按钮,但使用不同的XML文件。 我希望能够做的就是这样,来自“主要”:

button1:startActivity(new Intent(main.this,next.class,R.layout.xmlfile1)); button2:startActivity(new Intent(main.this,next.class,R.layout.xmlfile2));

我想我可以使用全局变量在应用程序上下文中保存xml-name,但这不会很优雅。

任何人都知道有没有办法完成我正在寻找的东西?目前我正在创建重复的类文件,这并不是一个顺利的方法...

2 个答案:

答案 0 :(得分:1)

您可以通过在Intent上添加额外数据来将数据传递给活动。 请参阅Intent的方法putExtragetIntExtra以及朋友。

您输入的整数是xml资源ID。 在您使用getIntExtra活动的活动上,活动意图(getIntent)来检索ID。

答案 1 :(得分:1)

假设活动A:

中有一个整数数组
int array[] = {1,2,3};

我想将该变量发送到活动B,所以我创建了一个新的intent并使用了putExtra方法:

Intent i = new Intent(A.this, B.class);
i.putExtra("numbers", array);
startActivity(i);

在活动B中,我获得了信息:

Bundle extras = getIntent().getExtras();
int[] arrayB = extras.getIntArray("numbers");