由于ScrollView自身的滑动事件,将EditText的焦点抢占 ,所以需要对EditText的onTouch事件进行重写
如上图1所示,使用这种方法虽然解决了ScrollView与EditText合用时的焦点抢占问题,但是由于当触碰Edittext时,将滑动事件交给它,使得ScrollView的滑动事件失效,所以滑动时,有种卡顿的感觉。
为解决上述交互体验问题,通过下面方法可以解决:
如上图2所示:这个方法会根据Edittext的内容判断是否需要滚动,这样当Edittext内容不需要滑动时,滚动事件仍然交给ScrollView处理
最后附上完整的代码,如图3所示。