Java 致命异常:main(android.content.res.Resources$NotFoundException:Resource ID#0x0)

Java 致命异常:main(android.content.res.Resources$NotFoundException:Resource ID#0x0),java,android,Java,Android,我正在尝试使用Android Studio 3.4.1运行一个应用程序,但当我尝试调试或运行它时,应用程序崩溃 我已经遇到过一次无法启动activity ComponentInfo错误,但是在使用Kotlin的项目上(该项目使用Java),出现了一个不同的异常。我尝试过编辑清单、修改活动,并将mipmap文件夹中的所有图像更改为drawable文件夹,但这些都不起作用 这是我的AndroidManifest.xml: MyBaseActivity.java: package com.exam

我正在尝试使用Android Studio 3.4.1运行一个应用程序,但当我尝试调试或运行它时,应用程序崩溃

我已经遇到过一次
无法启动activity ComponentInfo
错误,但是在使用Kotlin的项目上(该项目使用Java),出现了一个不同的异常。我尝试过编辑清单、修改活动,并将
mipmap
文件夹中的所有图像更改为
drawable
文件夹,但这些都不起作用

这是我的
AndroidManifest.xml


My
BaseActivity.java

package com.example.testapp;
导入android.content.Intent;
导入android.os.Bundle;
导入android.support.annotation.NonNull;
导入android.support.design.widget.BottomNavigationView;
导入android.support.v7.app.AppActivity;
导入android.view.Menu;
导入android.view.MenuItem;
公共类BaseActivity扩展AppCompativity实现BottomNavigationView.OnNavigationItemSelectedListener{
受保护的底部导航视图导航视图;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(getContentViewId());//在日志中引用此行
navigationView=findViewById(R.id.nav_视图);
navigationView.setOnNavigationItemSelectedListener(此);
}
@凌驾
受保护的void onStart(){
super.onStart();
updateNavigationBarState();
}
//删除活动间转换,以避免点击底部导航项时出现屏幕翻转
@凌驾
公共无效暂停(){
super.onPause();
覆盖转换(0,0);
}
@凌驾
公共布尔值onNavigationItemSelected(@NonNull final MenuItem item){
navigationView.postDelayed(新的Runnable(){
@凌驾
公开募捐{
int itemId=item.getItemId();
if(itemId==R.id.navigation\u home){
BaseActivity.this.startActivity(新意图(BaseActivity.this,BaseActivity.class));
}else if(itemId==R.id.navigation\u仪表板){
BaseActivity.this.startActivity(新意图(BaseActivity.this、DashboardActivity.class));
}else if(itemId==R.id.navigation\u通知){
BaseActivity.this.startActivity(新意图(BaseActivity.this,NotificationsActivity.class));
}
BaseActivity.this.finish();
}
}, 300);
返回true;
}
私有void updateNavigationBarState(){
int actionId=getNavigationMenuItemId();
选择BottomNavigationBarItem(操作ID);
}
void selectBottomNavigationBarItem(int itemId){
Menu Menu=navigationView.getMenu();
对于(inti=0,size=menu.size();i
和我的调试日志:

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.testapp, PID: 10261
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.testapp/com.example.testapp.BaseActivity}: android.content.res.Resources$NotFoundException: Resource ID #0x0
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2827)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2902)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1603)
        at android.os.Handler.dispatchMessage(Handler.java:105)
        at android.os.Looper.loop(Looper.java:169)
        at android.app.ActivityThread.main(ActivityThread.java:6578)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)
     Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0
        at android.content.res.ResourcesImpl.getValue(ResourcesImpl.java:204)
        at android.content.res.Resources.loadXmlResourceParser(Resources.java:2133)
        at android.content.res.Resources.getLayout(Resources.java:1142)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:421)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:374)
        at android.support.v7.app.AppCompatDelegateImpl.setContentView(AppCompatDelegateImpl.java:469)
        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)
        at com.example.testapp.BaseActivity.onCreate(BaseActivity.java:18)
        at android.app.Activity.performCreate(Activity.java:7016)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1214)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2780)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2902) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1603) 
        at android.os.Handler.dispatchMessage(Handler.java:105) 
        at android.os.Looper.loop(Looper.java:169) 
        at android.app.ActivityThread.main(ActivityThread.java:6578) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) 
该应用程序本来应该可以工作,但在修改了.javas之后,无论我做了什么,它都开始出现这个错误。我见过一些结果类似的问题,但实际上没有一个对我有帮助。

试着改变一下

setContentView(getContentViewId())

setContentView(R.layout.activity_base)


错误:

Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x0

表示找不到资源,因为它指向
setContentView
,表示找不到
getContentViewId()

错误原因在日志中指定:在com.example.testapp.BaseActivity.onCreate(BaseActivity.java:18)。这对应于您的代码setConentView(getContentViewId())。getContentViewId()函数始终返回0。在此处阅读有关setConentView()的更多信息:。尝试更改
setContentView(getContentViewId())
setContentView(R.layout.activity_base)@HB。非常感谢。成功了。