我知道有很多人提出同样的问题(很多人都在回答),但他们的答案都没有帮助我.
如果我是匿名从接口实现方法,我总是得到@override注释错误.
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override // <-- **this will give error message** public void onItemClick(AdapterView<?> adapterView,View view,int i,long l) { Menu menu = MainMenu.listMenu.get(i); Tabs.setCurrentTab(menu.pos + 1); } });
我正在团队中开发我的Android应用程序.我的团队正在使用IDEA,而我正在使用eclipse.
我的团队从未得到过这个错误.这可能是日食的错误吗?
我们的java版本是一样的,1.6.
我的eclipse版本是3.7.
错误是:
Multiple markers at this line - The method onItemClick(AdapterView<?>,View,int,long) of type new AdapterView.OnItemClickListener(){} must override a superclass method - implements android.widget.AdapterView.OnItemClickListener.onItemClick
任何人都可以建议可以做些什么来消除这个错误?
编辑:
更多信息,在这种情况下我不会得到错误:
@Override public View getView(int position,View v,ViewGroup parent) { try { ... } Menu menu = Menu.getListMenu().get(position); if (menu != null){ ... } } catch (Exception e) { ... } return v; }
解决方法
从现有代码导入项目时,我多次遇到此问题.由于某些原因,JDK合规性级别默认为Java 1.5,即使您的计算机上安装了1.6.如果是这种情况,请在Eclipse包资源管理器中右键单击您的项目,选择Properties,选择Java Compiler部分,然后将JDK Compliance级别设置为1.6