如何使用 getApplicationContext() 打开 Activity?
How to Open Activity using getApplicationContext()?
我正在使用底部导航菜单,在每个 itemMenu
上我调用一个函数来打开正确的 Activity:
//In the activty "A" where there's the bottom nav bar:
HelpActivity help = new HelpActivity();
case R.id.navigation_home:
help.openHomeActivity();
在HelpActivity
public void openHomeActivity(){
Intent i = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(i);
}
应用程序崩溃,请问如何解决?
错误
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.content.Context.getApplicationContext()' on a null object reference
HelpActivity help = new HelpActivity();
从不 自己创建 activity 的实例。
修改openHomeActivity()
为:
public void openHomeActivity(Context context){
Intent i = new Intent(context, HomeActivity.class);
startActivity(i);
}
然后,当您调用它时,传入一个已经存在的Context
,例如具有底部导航视图的Activity
。
我正在使用底部导航菜单,在每个 itemMenu
上我调用一个函数来打开正确的 Activity:
//In the activty "A" where there's the bottom nav bar:
HelpActivity help = new HelpActivity();
case R.id.navigation_home:
help.openHomeActivity();
在HelpActivity
public void openHomeActivity(){
Intent i = new Intent(getApplicationContext(), HomeActivity.class);
startActivity(i);
}
应用程序崩溃,请问如何解决?
错误
java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.Context android.content.Context.getApplicationContext()' on a null object reference
HelpActivity help = new HelpActivity();
从不 自己创建 activity 的实例。
修改openHomeActivity()
为:
public void openHomeActivity(Context context){
Intent i = new Intent(context, HomeActivity.class);
startActivity(i);
}
然后,当您调用它时,传入一个已经存在的Context
,例如具有底部导航视图的Activity
。