NestedScrollView嵌套RecyclerView总是显示底部的recyclerview中的内容

用NestedScrollView嵌套RecyclerView时有时候总是下面的recyclerview,也就是说上方其实还是有其他内容的,可是一打开界面recyclerView就占据了焦点导致页面会上滑.

方法一:在根布局中设置android:descendantFocusability属性
android:descendantFocusability属性值设置成blocksDescendants
android:descendantFocusability属性一共有三种值分别如下:

  • beforeDescendants:viewgroup会优先其子类控件而获取到焦点
  • afterDescendants:viewgroup只有当其子类控件不需要获取焦点时才获取焦点
  • blocksDescendants:viewgroup会覆盖子类控件而直接获得焦点

这种方法,会存在一个问题,如果页面有EditText的焦点会被抢导致无法输入。

方法二:对于有Editext的页面需要在根布局使用

android:focusable="true"
android:focusableInTouchMode="true"

借鉴于:https://blog.csdn.net/u012230055/article/details/80016802

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,242评论 25 708
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,917评论 2 59
  • 最近发现自己负责的项目中,有使用 ScrollView 嵌套 RecyclerView 的地方,但是没有做任何针对...
    Coralline_xss阅读 48,039评论 10 56
  • 县域盆地周遭峰峦,视线随意伸展尽头就是山;塞外多旱相连大漠,上苍眷顾最低处中流一水。水的名字叫桑干河、洋河,两河交...
    山水依情阅读 266评论 0 0