setOnLongClickListener导致意外的顶级异常

时间:2013-06-27 15:18:38

标签: android intellij-idea android-studio

当我在我的活动

中添加这行代码时
    findViewById(R.id.btFilter).setOnLongClickListener(new View.OnLongClickListener() {
        @Override
        public boolean onLongClick(View view) {
            ResultadoBuscaMapa.this.finish();
            return true;
        }
    });

我无法编译,并收到此错误

UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dx.util.ExceptionWithContext
at com.android.dx.util.ExceptionWithContext.withContext(ExceptionWithContext.java:46)
...
Intellij IDEA Android Studio (最新版本)

有趣的是,这是一个旧代码,直到昨天才工作得很好。

Android Studio是否可能破坏了我的项目结构?

enter image description here

2 个答案:

答案 0 :(得分:0)

你在哪里声明这个监听器?做ContextView.findViewById(R.id.btFilter);会更好 我通常在设置监听器之前声明我的小部件:

Button filter = (Button) findViewById(R.id.btFilter);
filter.setOnLongClickListener(....

另一种方式,如果没有ResultadoBuscaMapa.this.finish();,你会尝试错误,因为错误似乎与你的背景有关。

希望有所帮助

答案 1 :(得分:0)

在我最近更新 Android Studio 之后看起来很奇怪,错误在 BOTH IDE中消失了。现在它在 Intellij IDEA

中运行良好