Search code examples
javaandroidscrollscrollview

Scrollview not scrolling down completely


I'm building a chat-like application that displays text the user inputs to the screen using a scrollview. What I'm doing is auto-scrolling the scrollview down as more text is appended to the screen. I'm using

 ScrollView my_scrollview = (ScrollView) findViewById(R.id.scroller);
 my_scrollview.fullScroll(ScrollView.FOCUS_DOWN);

This seems to work, although for some reason, because the keyboard is usually on screen while chatting, when the scrollview scrolls down it doesn't completely - the newest textview added is not displayed (you'll have to manually scroll down to the newest one). How do I go about fixing this?


Solution

  • I looked around, and found that some other people have run into the same problem.

    I solved this problem using this piece of code:

    final ScrollView scrollView = (ScrollView) findViewById(R.id.scroll_view);
    scrollView.post(new Runnable() {
        public void run() {
            scrollView.fullScroll(View.FOCUS_DOWN);
        }
    });
    

    Hopefully this can help somebody out there!