是不是每个itemcontent都进行了-mSpace操作,或者这里是怎么知道是第一个item的

来源:1-5 网格布局自定义分割线(下)

幕布斯4154865

2019-09-04 20:23

/**
 * View 为我们提供了margin属性
 * margin 为正值时,则View 会距离边界产生一个距离
 * margin 为负值时,则View 会超出边界产生一个距离
 * */
        LinearLayout.LayoutParams layoutParams= (LinearLayout.LayoutParams) parent.getLayoutParams();
        layoutParams.leftMargin=-mSpace;
        parent.setLayoutParams(layoutParams);


写回答 关注

3回答

  • 大迷糊and小迷糊
    2020-08-03 12:52:30

    不是很理解这个过程,但感觉后面是针对本层的LinearLayout的各个参数进行设置,给了它一个负的leftMargin,这样整个布局就是从稍微往左边一点就开始的,这样最左边的白色刚刚好显示不出来。

  • Mrtan_1
    2020-02-25 10:02:10

    这里是让每个Item距离左边屏幕的内容都为-mSpace,当实现分界线的时候每个Item又会向右偏移mSpace的距离,就变成了正常的显示了。

  • 慕妹142438
    2019-09-05 19:07:28

    我觉得是装有这些item的RecyclerView这个整体向左移了这些距离

    慕运维256...

    感觉应该是这样,因为它后面的优化使那几句代码单独写了一个方法,然后再构造方法中调用,那就使这个方法仅调用了一次

    2020-04-20 14:55:17

    共 1 条回复 >

我的云音乐(二)

高仿网易云音乐,从零开始开发一款专属自己的音乐APP。

7935 学习 · 82 问题

查看课程

相似问题