android – 滚动到顶部或底部后,需要单击NestedScrollView中的项目两次

我在CoordinatorLayout中有一个NestedScrollView.在NestedScrollView中,我有一个带有几个组件的LinearLayout,其中一些是按钮.没有组件的自定义,我只有标准的布局参数.

我面临的问题是,每当我将NestedScrollView推到顶部或底部并看到过度滚动边缘时,视图上的所有按钮在第一次按下时都不会处理任何触摸.需要第二次触摸,从那时起,任何按钮都会在第一时间响应.这就好像焦点丢失了,第一个触摸是将它恢复到视图,第二个触摸是真正处理的焦点.

我试过了:

>设置focusable = true,focusableInTouchMode = true和descendantFocusability = afterDescendants.不起作用.
>覆盖NestedScrollView的onScrollChanged以检测我们何时到达顶部/底部并手动请求最近视图的焦点.不起作用,发生奇怪的事情,例如工具栏上的视图聚焦……
>通过dispatchTouchEvent()在LinearLayout上模拟触摸事件.

他们都没有工作.非常感谢,如果你能帮助我看到光明!

编辑:似乎与this有关.

最佳答案
显然这是一个错误:
https://code.google.com/p/android/issues/detail?id=178041

截至今天,它尚未在支持库v23中修复.

转载注明原文:android – 滚动到顶部或底部后,需要单击NestedScrollView中的项目两次 - 代码日志