我有一个包含3个活动A,B和C的应用程序。活动A是我启动应用程序时启动的活动。从A开始B使用mIntent.setClass(A.this, B.class);
,然后startActivity(mIntent);
这很顺利。出现问题的是我想从B开始活动C.
这就是manifestfile的样子:
<activity android:name=".B"/>
<activity android:name=".C"/>
我知道我可以做下面的事情:从A开始B然后从B开始回到A然后开始C
或让B拥有自己的manifestfile,因此是一个独立的应用程序,让C成为这个应用程序中的一个活动。
欢迎任何建议。我对我英语不好的帮助。
谢谢
答案 0 :(得分:1)
您在注释中发布的错误是NullPointerException,这意味着您正在调用方法(或尝试访问属性等)的某些变量尚未实例化。您是否可能在调用setClass之前声明mIntent但未将其设置为新的Intent?发布B类的代码,它应该很容易弄明白(通常是NullPointerExceptions)。
答案 1 :(得分:1)
如果你没有在你的B活动中获得它,则mIntent变为null。 所以在B里面,你要初始化mIntent。
你可以这样做
startActivity(new Intent(this, C.class));
答案 2 :(得分:0)
由于您是在onCreate中执行此操作,是否在尝试启动此新活动之前调用了super.onCreate?