android - 为什么这个方法调用不能转换成lambda?

标签 android lambda retrolambda

考虑以下代码:

recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
            @Override
            public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
                //some code here
            }
        });

为什么不能翻译成这样:

recyclerView.addOnScrollListener((recyclerView, dx, dy) -> {
    // some code here
});

我在 AndroidStudio 中使用 retrolambda

最佳答案

因为 RecyclerView.OnScrollListener 是一个抽象类,实际上比 onScrolled 有更多的方法。

关于android - 为什么这个方法调用不能转换成lambda?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40258972/

相关文章:

java - jarsigner 在哪里?

android - 从 Android Studio 在设备上安装 Android 应用

c# - 如何检查用户的输入是否存在于数据库表中?

c++ - 引用此指针并从类的构造函数内部连接一个lambda是否合法?

maven - Google App Engine 上的 Retrolambda

android - Google Maps v3 MapView 未在 Android 中获取所有父 View

Android - Crittografy Cipher 解密不起作用

C++ 嵌套 Lambda

android retrolambda,语句lambda可以替换为表达式lambda

java - RxJava 中的方法引用是如何工作的?