Android:获取WebView的滚动位置

标签 android webview

我是 Android 新手。

我只想知道用户在页面上滚动的位置。当网页上的某个点出现在屏幕底部时,我想触发一个事件。但是这段代码会导致异常。我知道 WebView 继承了 View 的 getScrollY()。我没有正确实现它吗?

提前致谢。

public class Scroll extends Activity {

    public WebView webview;
    public float yPos;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        WebView webview = new WebView(this);
        setContentView(webview);
        webview.loadUrl("file:///android_asset/Scroll.html");
    }


    public boolean onTouchEvent(final MotionEvent event) {
        if (event.getAction() == MotionEvent.ACTION_MOVE) {
            yPos = webview.getScrollY();
            Log.v("Scroll", "yPos = " + yPos); 
        }
        return false;
    }
}

最佳答案

异常(exception)是?
这是我的一个应用程序中关于 WebView 屏幕高度的注释:

// current position (top) = getScrollY();  
// max position = getContentHeight();  
// screen height = getHeight();

关于Android:获取WebView的滚动位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2456861/

相关文章:

android - 类 NestedScrollView 中没有虚拟方法 setOnScrollChangeListener(Landroidx/core/widget/NestedScrollView$OnScrollChangeListener;)V

ios - 如何在 iOS 的 webview 中更改按钮的背景颜色

java - 从一个类在 webview 中打开 url?

Android:相机预览上的透明 WebView

android - 需要帮助从 stock android 浏览器更改为 webview

objective-c - 在 OS X 应用程序 WebView 中模拟移动 Safari

android - 移动 Firefox 插件开发 : window. BrowserApp.deck 为空

java - 如何将相关信息从网页 (HTML) 获取到我的 Android 应用程序中?

android - 针对不同设备缩放 Android Canvas 2D 图形

java - 无法在 runonuithread 中为 textview 设置值