我有一个视图A,它与另一个视图B有一个依赖关系。当我试图隐藏这个视图B时,视图A的位置仍然是相同的。理想情况是,如果视图B的可见性为GONE,则视图A应更新其位置。
在视图行为中,有一个名为onDependentViewChanged()的方法,但根据此方法的注释,只有在视图B的位置发生变化时才会更改视图A的位置。但我不想改变视图B的位置,只需隐藏它。
因此,如果我想隐藏视图B时更新视图A的位置,我该怎么做。
由于
====
我还尝试更新onDependentViewRemoved中的视图,但不确定为什么不调用此方法
答案 0 :(得分:0)
找到解决方案,在检查了CoordinatorLayout的源代码后,发现一个接口方法onLayoutChild()就是我想要的。只需在自定义行为文件中实现此方法,并在此方法中,根据相关视图的可见性更新目标视图的位置。