Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何使用getApplicationContext()打开活动?_Android_Android Context_Android Bottomnav - Fatal编程技术网

Android 如何使用getApplicationContext()打开活动?

Android 如何使用getApplicationContext()打开活动?,android,android-context,android-bottomnav,Android,Android Context,Android Bottomnav,我正在使用底部导航菜单,在每个项菜单上调用一个函数以打开正确的活动: //In the activty "A" where there's the bottom nav bar: HelpActivity help = new HelpActivity(); case R.id.navigation_home: help.openHomeActivity(); 在帮助活动中 public void openHomeActiv

我正在使用底部导航菜单,在每个
项菜单上调用一个函数以打开正确的活动:

//In the  activty "A" where there's the bottom nav bar:

HelpActivity help = new HelpActivity();

                case R.id.navigation_home:
                help.openHomeActivity();
帮助活动中

public void openHomeActivity(){

    Intent i = new Intent(getApplicationContext(), HomeActivity.class);
    startActivity(i);
}
应用程序崩溃,请问如何解决

错误

java.lang.NullPointerException:尝试对空对象引用调用虚拟方法“android.content.Context android.content.Context.getApplicationContext()”

切勿自己创建活动实例

将openHomeActivity()修改为:

public void openHomeActivity(Context context){

    Intent i = new Intent(context, HomeActivity.class);
    startActivity(i);
}
然后,当您调用它时,传入一个已经存在的
上下文
,例如具有底部导航视图的
活动

切勿自己创建活动实例

将openHomeActivity()修改为:

public void openHomeActivity(Context context){

    Intent i = new Intent(context, HomeActivity.class);
    startActivity(i);
}

然后,当您调用它时,传入一个已经存在的
上下文
,例如具有底部导航视图的
活动

应用程序崩溃,那么logcat内部有什么错误???把它贴在这里。还要检查您是否声明了HomeActivity的内部清单。应用程序崩溃,那么logcat内部的错误是什么???把它贴在这里。还要检查是否声明了HomeActivity。但是如何调用openHomeActivity()?@Machine:Put
openHomeActivity()
在类上放置
开关
块和
case R.id.navigation\u home
内容。或者,摆脱该方法,只需从
case R.id.navigation\u home
块内部调用
startActivity()
。我不知道我们可以调用startActivity(),现在我可以使用类帮助了,非常感谢您的帮助和时间
openHomeActivity(此)
但是如何调用openHomeActivity()?@Machine:Put
openHomeActivity()
放在类上,其中
开关
块带有
case R.id.navigation\u home
内容。或者,摆脱该方法,只需从
case R.id.navigation\u home
块内部调用
startActivity()
。我不知道我们可以调用startActivity(),现在我可以使用类帮助了,非常感谢您的帮助和时间
openHomeActivity(此)