我试图添加一个OnScrollChangeListener到我正在开发的自定义Webview。但编译不了。下面是我正在使用的代码:
// Set custom OnScrollChangeListener
setOnScrollChangeListener(new OnScrollChangeListener() {
@Override
public void onScrollChange(Webview view, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
isScrolling = true;
isScrolledToTheTop = (scrollY == 0);
}
});
字符串
但是在编译时,我得到了以下错误,这对我来说毫无意义:
/.../VEMAWebview.java:36: error: <anonymous de.X.Y.VEMAWebview$1> is not abstract and does not override abstract method onScrollChange(View,int,int,int,int) in OnScrollChangeListener
setOnScrollChangeListener(new OnScrollChangeListener() {
^
/.../VEMAWebview.java:37: error: method does not override or implement a method from a supertype
@Override
^
型
其中上面提到的onScrollChange函数在第37行中。
基本上它是说onScrollChange没有被覆盖。在下一行中,它说不允许使用@override,因为它没有覆盖任何函数
我该怎么解决这个问题?
1条答案
按热度按时间yc0p9oo01#
这是错误的签名,因为暴徒生活在评论中建议。
正确的代码应该是这样的:
字符串
我不想问为什么Java不只是说签名不匹配任何可用的超类型方法。我很高兴我的项目是基于C的(C只是告诉你一个不匹配的签名),我只需要这个小的Java片段。