为什么这个方法调用不能转换成lambda?
Why this method call can not be converted into lambda?
考虑以下代码:
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
是一个抽象 class 并且实际上有比 onScrolled
更多的方法。
考虑以下代码:
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
是一个抽象 class 并且实际上有比 onScrolled
更多的方法。