In my app I'm loading a local HTML file to a webview. If some button was clicked, I want to load a local HTML file and scroll it with specific value in y axis.
The problem is that the command:
webview.scrollTo(0, scrollY);
is executed too early, before the HTML file finish loaded, so the scrolling is not happen.
I tried to use a lot of answers from Stackoverflow (like this, and this) but the problem is always the same. I can see in debug mode that the scrollTo command executed before the file is visible.
Anyone have any idea how can I achieved this scrolling?
After trying all the answers I found that only the following really help: private final Handler mHandler = new Handler();
    // in onCreate
    mHandler.postDelayed(new Runnable() {
            @Override
            public void run() {
                if (mWebView.getContentHeight() > 0) {
                    mWebView.scrollTo(0, mLastPosition);
                    Log.d("scrolling", "true");
                    mHandler.removeCallbacks(this);
                } else {
                    mHandler.postDelayed(this, 100);
                }
            }
        }, 100);
This solution was taken from hereenter link description here