ScrollView中存在EditText引发自动滚动问题

    技术2022-07-10  136

    经常遇到ScrollView中,存在EditText,当页面滑到底部做一个更新组件的操作时,界面会自动上滑到EditText位置。是因为这个时候焦点被EditText占用,布局自动定位到了它身上。还好在csdn上看到了一片文章,找到了解决方案,原文地址如下

    https://blog.csdn.net/xiao_sier/article/details/106992752

    下面大概讲述下解决方案:

    在ScrollView滚动时,让ScrollView自动获取到焦点

    scrollView.setDescendantFocusability(ViewGroup.FOCUS_BEFORE_DESCENDANTS); scrollView.setFocusable(true); scrollView.setFocusableInTouchMode(true); scrollView.setOnTouchListener((v, event) -> { v.requestFocusFromTouch(); return false; });

    这样就会捕获焦点,阻止了页面的滑动,很好的解决了问题。

    Processed: 0.013, SQL: 9