代码之家  ›  专栏  ›  技术社区  ›  Ebad Saghar

如何确定Android中两个视图的公共superview

  •  1
  • Ebad Saghar  · 技术社区  · 6 年前

    我的一个朋友问了我这个问题,但我无法独自找出答案。我已经试着在谷歌上搜索过了,但我正在为iOS平台寻找答案。

    也许我可以用谷歌搜索错误的术语,我想知道如何找到答案。如果涉及到Android OS/抽象为开发人员实现的场景,我也想知道是什么。

    如何确定Android中两个视图的公共superview?

    3 回复  |  直到 6 年前
        1
  •  1
  •   Diego Torres Milano    6 年前

    使用 View.getParent() 从两个视图开始,直到在n元视图树中找到最低的共同祖先。

        2
  •  0
  •   Alexei Artsimovich    6 年前

    JAVA没有多重继承,所以你不能通过 extends 但有一种方法可以通过接口实现。只需定义一个接口,其中包含您希望每个视图子类都拥有的方法,然后您的视图子类就必须实现这个接口。

        3
  •  -1
  •   Serega    6 年前

    我不知道安卓系统中是否有这样的方法,但编写自己的方法并不困难。Common superview只是视图树中这两个视图的最低共同祖先(LCA)。LCA的发现是一个标准的算法问题,有许多具有不同渐近性的算法来解决它。