boolean onKeyDown(int keyCode,KeyEvent事件)

时间:2017-04-12 20:18:17

标签: android android-activity key-events

我正在尝试实施此方法,我犯了这个错误:

  

致命例外:主要   android.content.ActivityNotFoundException:无法找到显式   活动类{app.gestionservicios / android.view.Menu};有你   在AndroidManifest.xml中声明了这个活动?

这是我的代码:

Override
    public boolean onKeyDown(int keyCode, KeyEvent event)
    {
        if ((keyCode == KeyEvent.KEYCODE_BACK))
        {
            Intent passIntent = new Intent();
            passIntent.setClass(Listado.this,Menu.class);
            startActivity(passIntent);

            return true;

        }

        return super.onKeyDown(keyCode, event);
    }

这个mi表现最好:

 <activity
            android:name=".Menu"
            android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

我不知道这个错误会出现在哪里,因为在我的manifiest.xml中声明了活动菜单,并且我有java文件菜单。它不显示编译错误,只显示执行错误

由于

1 个答案:

答案 0 :(得分:0)

确保在此代码中

Intent passIntent = new Intent();
passIntent.setClass(Listado.this,Menu.class);

菜单是你的活动,而不是android.view.Menu类。

或者您可以尝试下一个代码:

Intent passIntent = new Intent();
passIntent.setClass(Listado.this, your_pacakge_name.Menu.class);

其中your_pacakge_name - 是声明Menu活动的包的名称。