androidviewandroid-edittextscrollviewprogrammatically-created

Is there a way to programmatically scroll a scroll view to a specific edit text?


I have a very long activity with a scrollview. It is a form with various fields that the user must fill in. I have a checkbox half way down my form, and when the user checks it I want to scroll to a specific part of the view. Is there any way to scroll to an EditText object (or any other view object) programmatically?

Also, I know this is possible using X and Y coords but I want to avoid doing this as the form may changed from user to user.


Solution

  • private final void focusOnView(){
        yourScrollView.post(new Runnable() {
            @Override
            public void run() {
                yourScrollView.scrollTo(0, yourEditText.getBottom());
            }
        });
    }