美文网首页android收集Android开发经验谈Android技术知识
解决一个问题,ScrollView嵌套RecyvlerView

解决一个问题,ScrollView嵌套RecyvlerView

作者: Ricco_F | 来源:发表于2018-03-01 12:14 被阅读96次
    转载请注明原创出处,谢谢!

    首先我要感谢这篇文章

    ps:最近在新项目中遇到了一个问题,一个ScrollView嵌套要嵌套多个RecyclerView。如效果图。当我没开始写的时候就考虑到了Item显示不全和滑动事件的问题。所有我开始查资料解决,虽然很快就解决了,但是踩了一个大坑,所有把他分享给其他正在由此问题的程序员们。

    效果图.png

    网上很多技术文章给出的方案是用自定义类FullyLinearLayoutManager解决问题,这个方案虽然最后解决了问题,但是滑动流畅度被改变了,像得了老年痴呆一样慢,这是我的App绝对不能忍受的。

    幸运的是我又在网上查到了新的解决方案,也就是我开篇感谢的那篇文章,而且这个方案也被很多人使用,但是这个方案被那个像老年痴呆一样慢的文章给否决了,原因是没有完美解决。好玩的是,在我的app中,嵌套问题被完美解决。。。

    我知道很多人的懒的点击我推荐的解决方案,使用我就把他拷贝一下,然后加点东西,做个小笔记,记录一下。

    作者给出的方案是

    在xml布局文件中将ScrollView替换android.support.v4.widget.NestedScrollView,并在java代码中设置recyclerView.setNestedScrollingEnabled(false);属性。

    在MD中,RecyclerView代替了ListView,而NestedScrollView代替了ScrollView,就这么简单。Nested就是嵌套的意思。

    NestedScrollView

    翻译:NestedScrollView就像ScrollView,但它支持代理。作为一个嵌套的滚动父和子,在新版本和旧版本的Android。默认情况下启用了嵌套滚动。

    小计

    如果只使用NestedScrollView替换了ScrollView,而不在java代码中设置recyclerView.setNestedScrollingEnabled(false);属性。那么你的App滑动流畅度就像得了老年痴呆一样,和自定义FullyLinearLayoutManager解决方案的滑动流畅度有的一拼。

    相关文章

      网友评论

        本文标题:解决一个问题,ScrollView嵌套RecyvlerView

        本文链接:https://www.haomeiwen.com/subject/qflgxftx.html