布尔的onkeydown(INT的keyCode,KeyEvent的事件)

问题描述:

我想实现这个方法,我也得到了这个错误:布尔的onkeydown(INT的keyCode,KeyEvent的事件)

致命异常:主要
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 manifiest.xml:

<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文件菜单。它不显示的编译错误,只执行错误

感谢

+0

看起来你有某种命名冲突,因为它正在寻找'android.view.Menu'而不是**你的** Menu类。也许你必须在你的清单中更全面地限定类? – MyiEye

+0

@MyiEye,也许你很喜欢,但是......我怎样才能在我的表演中更有品位? – wiki

+1

看起来像一个错误的导入。在你的代码所在的活动中,搜索'import android.view.Menu;',并用你的包中的正确类替换它 – njzk2

确保在此代码

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 - 是你的菜单活动声明的包的名称。

+0

泰克的代码,现在它不显示任何错误,但当我按下键时,它不会改变活动 – wiki

+0

它现在的作品,我fogotten startActivity方法,泰克,效果很好! – wiki