美文网首页
NestedScrolling解析

NestedScrolling解析

作者: VegetableAD | 来源:发表于2017-03-12 23:11 被阅读29次

    NestedScrolling机制(一)——概述](http://blog.csdn.net/al4fun/article/details/53888990)

    NestedScrolling机制(二)——实例

    NestedScrolling机制(三)——机制本质以及源码解析

    NestedScrolling机制(四)——最后一个例子

    补充

    看完以上文章后不知以下方法中的第一个参数和第二个参数的区别,遂调试看了下两个对象,按照以上实例中的代码发现第一个和第二个参数是一样的对象(内存地址都一样),遍查看了下源码它们之间的区别。

    public boolean onStartNestedScroll(View child, View target, int nestedScrollAxes);

    从NestedScrollingChildHelper这个帮助类的public boolean startNestedScroll(int axes)这个方法可以看到调用了
    ViewParentCompat类中的方法

    boolean onStartNestedScroll(ViewParent parent, View child, View target,int nestedScrollAxes);
    这个方法中调用了

    IMPL.onStartNestedScroll(parent, child, target, nestedScrollAxes);
    而IMPL这个静态变量的初始化是根据系统版本进行初始化的,往下看可以看到

    return parent.onStartNestedScroll(child, target, nestedScrollAxes);
    这段代码中传递了child和target是在NestedScrollingChildHelper类的

    public boolean startNestedScroll(int axes)中进行赋值的,赋值语句View child = mView;
    mView即是初始化NestedScrollingChildHelper时传递的view,前面的例子中使用了self,所以是一样的。

    相关文章

      网友评论

          本文标题:NestedScrolling解析

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