Android开发 - 掌握ConstraintLayout(九

作者: 罗伊德666 | 来源:发表于2018-12-03 13:43 被阅读16次

    使用ConstraintLayout后我们的布局是没有层级关系的,各个View之间都是平级关系,但是如果根据某个业务条件来控制多个View的显示与否,我们需要分别对每个View进行控制,需要调用多次setVisibility()。这样就显得非常不方便。

    本文所介绍的Group就是解决这个问题的。

    Group就是一个分组,可以关联多个View,从而只需要对这个分组进行控制就可以实现这样的场景。

    我们下面来介绍它的使用。

    添加分组

    首先,我们添加一个Group:


    -w468

    关联元素

    然后将页面上的元素拖动到这个分组中:


    -w231

    注意这里将View拖动到这个Group中,并不是创建了一个层级关系,而是Group关联了这些View,同上一篇:Barrier的使用一样,可以查看代码:

    -w469

    这样我们就构成了一个分组,然后我们只需要控制这个分组的显示与否就可以同时控制其关联的View的显示与否了。

    显示控制

    我们选中这个Group,然后在右侧的属性栏可以改变其显示属性。当然也可以通过代码来控制:

    -w288
    findViewById(R.id.group).setVisibility(View.GONE);
    

    总结

    因为传统布局存在View的层级关系,所以通过控制父View的显示即可。使用ConstraintLayout后则可以通过使用分组可以解决这样的问题。

    下一篇:Android开发 - 掌握ConstraintLayout(十)按比例设置视图大小,我们将介绍如何按比例设置View的大小。

    如有更多疑问,请参考我的其它Android相关博客:我的博客地址

    相关文章

      网友评论

        本文标题:Android开发 - 掌握ConstraintLayout(九

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