Android Studio 3.1 致命错误

Android Studio 3.1 fatal error

我犯了一个致命的错误,从 3.0.1 升级到 AS 3.1 我写了一个简单的应用程序,在 MainActivity 上,一个按钮有一个 onClick = onNEXT 当点击时使用 Intent 导航到 ListActivity XML我正在使用 API 26 min and max 这行代码在 Build Gradle 项目中看起来有问题吗? class路径'com.android.tools.build:gradle:3.1.0'

这里是错误 03-31 04:26:14.306 7133-7133/com.androidWhosebug.atestcon E/AndroidRuntime:致命异常:main 进程:com.androidWhosebug.atestcon,PID:7133 java.lang.IllegalStateException: 无法执行 android:onClick 的方法 在 android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293) 在 android.view.View.performClick(View.java:6256) 在 android.view.View$PerformClick.run(View.java:24701) 在 android.os.Handler.handleCallback(Handler.java:789) 在 android.os.Handler.dispatchMessage(Handler.java:98) 在 android.os.Looper.loop(Looper.java:164) 在 android.app.ActivityThread.main(ActivityThread.java:6541) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) 原因:java.lang.reflect.InvocationTargetException 在 java.lang.reflect.Method.invoke(本机方法) 在 android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288) 在 android.view.View.performClick(View.java:6256) 在 android.view.View$PerformClick.run(View.java:24701) 在 android.os.Handler.handleCallback(Handler.java:789) 在 android.os.Handler.dispatchMessage(Handler.java:98) 在 android.os.Looper.loop(Looper.java:164) 在 android.app.ActivityThread.main(ActivityThread.java:6541) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) 原因:android.content.ActivityNotFoundException:无法找到明确的 activity class {com.androidWhosebug.atestcon/android.app.ListActivity};你有没有在你的 AndroidManifest.xml 中声明这个 activity? 在 android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1932) 在 android.app.Instrumentation.execStartActivity(Instrumentation.java:1615) 在 android.app.Activity.startActivityForResult(Activity.java:4472) 在 android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult(BaseFragmentActivityApi16.java:54) 在 android.support.v4.app.FragmentActivity.startActivityForResult(片段Activity.java:67) 在 android.app.Activity.startActivityForResult(Activity.java:4430) 在 android.support.v4.app.FragmentActivity.startActivityForResult(片段Activity.java:720) 在 android.app.Activity.startActivity(Activity.java:4791) 在 android.app.Activity.startActivity(Activity.java:4759) 在 com.androidWhosebug.atestcon.MainActivity.onNEXT(MainActivity.java:21) 在 java.lang.reflect.Method.invoke(本机方法) 在 android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288) 在 android.view.View.performClick(View.java:6256) 在 android.view.View$PerformClick.run(View.java:24701) 在 android.os.Handler.handleCallback(Handler.java:789) 在 android.os.Handler.dispatchMessage(Handler.java:98) 在 android.os.Looper.loop(Looper.java:164) 在 android.app.ActivityThread.main(ActivityThread.java:6541) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

我的清单很干净

<?xml version="1.0" encoding="utf-8"?>

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".ListActivity">

    </activity>
</application>

这里是 MainActivity 代码

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button btnNext = findViewById(R.id.btnNext);
}

public void onNEXT(View view){
    Intent intent = new Intent(MainActivity.this, ListActivity.class);
    startActivity(intent);
}

}

我每次更新都从未如此失望,因为它是一个又一个的混乱我已经卸载并重新安装了 3 次,非常感谢对此的任何帮助配置的模拟器不允许您设置字段它在 AS 3.0.1 中做到了 较旧的项目无法正常工作 它们在 Styles 文件夹中有此错误

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">

主题是红色的

您的 activity 的名称是 ListActivity,但还有一个 android.app.ListActivity。 Android以为你指的是后一个。
所以你可以把 new Intent(MainActivity.this, ListActivity.class); 改成 new Intent(MainActivity.this, com.androidWhosebug.atestcon.ListActivity.class);
或者更改您的 ListActivity 的名称。

检查 MainActivity 开头的导入。您错误地导入了 android.app.ListActivity。 导入 yourpackagename.ListActivity

Intent intent = new Intent(MainActivity.this, ListActivity.class); startActivity(intent);