NestedScrollView中嵌套recyclerView的焦点问题

NestedScrollView中嵌套recyclerView的焦点问题,第1张

概述 思路:一开始认为是adapter刷新数据,调用notifyDataSetChanged的时候获取了焦点,所以显示为置顶,那我就在刷新数据后延时1.5秒在去设置nestedScrollView滑动到底部。即调用下面:ScrollView.fullScroll(View.FOCUS_UP);然并软。后来神奇的觉得,会不会是滑动冲突了,于是又在xml文

 

思路:一开始认为是adapter刷新数据,调用notifyDataSetChanged的时候获取了焦点,所以显示为置顶,那我就在刷新数据后延时1.5秒在去设置nestedScrollVIEw滑动到底部。即调用下面:

ScrollVIEw.fullScroll(VIEw.FOCUS_UP);

然并软。

后来神奇的觉得,会不会是滑动冲突了,于是又在xml文件的recyclerVIEw中添加了

  androID:nestedScrollingEnabled="false"

然并软。。。。。

好吧~还是找度娘了,某位大佬发现了这个问题:关于NestedScrollView嵌套RecyclerView页面载入时总是滑动到最底部

确实是recyclerVIEw占据了焦点,但是他的处理方式不同。

这里我选择了第一种方式,亲测有效~:

方法一:在根布局设置androID:descendantFocusability=”blocksDescendants” ;

androID:descendantFocusability 有三种值:beforeDescendants:vIEwgroup会优先其子类控件而获取到焦点afterDescendants:vIEwgroup只有当其子类控件不需要获取焦点时才获取焦点blocksDescendants:vIEwgroup会覆盖子类控件而直接获得焦点这种方法,会造成页面中Editext焦点被抢导致无法输入,需要用到第二种方法。


重新运行,加载,完美!
 

总结

以上是内存溢出为你收集整理的NestedScrollView中嵌套recyclerView的焦点问题全部内容,希望文章能够帮你解决NestedScrollView中嵌套recyclerView的焦点问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1112027.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存