我有一个初学者的问题。这是我的情况:新活动nullpointerexception
我想从主要活动开始一项新活动。启动新活动的代码位于单独的类文件中。我似乎传递了错误的观点,并且在尝试启动新的活动时,我以nullpointerexception结束。当我将代码放置在主活动类文件中时,新活动正常启动,因此第二个活动和清单都很好。这里是我的代码示例:
我主要的活动课,我实例化第二类(这是我的主要活动我省略了休息,因为我不认为这是有关的问题。):
Tester mytest = new Tester();
mytest.test(this);
在我的第二类文件(这不是一项活动;它是被实例化活性的类):
public class Tester extends Activity {
Intent myIntent;
public void test (Context context) {
myIntent = new Intent (Intent.ACTION_VIEW);
myIntent.setClass(context, newActivity.class);
thebutton.setOnClickListener(
new OnClickListener() {
public void onClick(View v) {
startActivity(myIntent);
}
}
):}
当我执行点击我收到的startactivity一个NullPointerException。任何人都可以启发我吗?我相信我错误地使用了上下文。
onclick(view v)在单独的类文件中找到。我是否必须将课程扩展到活动才能使用startactivity或theres以另一种方式? – Yash 2010-09-03 14:08:11
您需要使用startActivity的上下文:http://goo.gl/Wp60 – Juri 2010-09-03 14:25:58
只是为了好奇:在单独的课程中使用onClick事件的原因是什么? 在上面的代码中:我不会从Activity扩展,但是如果需要,可以在Tester类的构造函数中传递活动的Context,然后使用上下文来调用startActivity(..)等操作。 – Juri 2010-09-03 14:30:06