开始新的意图我要动态地开始新的意图。因此setClassName
似乎是最好的选择。不能由setClassName不同封装的Android
首先,我定义清单
<activity android:name="com.example.pkg2.Act" />
<activity android:name="com.example.pkg1.Act1" />
<activity android:name="com.example.pkg1.Act2" />
3活动从com.example.pkg2.Act
:
Intent intent = new Intent();
if(index == 0) intent.setClassName(Act.this, "com.example.pkg1.Act1");
else intent.setClassName(Act.this, "com.example.pkg1.Act2");
startActivity(intent);
而且会得到这个异常:
Unable to find explicit activity class {com.example.pkg2.Act/com.example.pkg1.Act1}; have you declared this activity in your AndroidManifest.xml?
看起来我们只能用setClassName
动态地启动新的活动,但在同一个包中。
任何想法来解决这个问题?所有的帮助表示赞赏。
'<活动机器人:名字= “com.example.pkg1.Act1”/>'变化ACT1 ACT2到您已声明ACT1 2次? – 2012-03-29 10:58:37
谢谢@imrankhan这是我的错,当复制粘贴:p – anticafe 2012-03-29 11:02:28
没关系,看到我更新的答案。 – 2012-03-29 11:03:35