将 Android FrameLayout 对象重置为 "clean" 状态

reset Android FrameLayout object to "clean" state

我正在尝试实现我自己的 Android 视图回收。我的问题是,是否有一种简单的方法可以将 "reset" 一个 Android View 对象(更具体地说,一个 FrameLayout)转换为它从构造函数中出来的状态。换句话说,它知道它的上下文,但它忘记了调用 SetWillNotDraw、触摸处理程序、可见性或我可能在其上设置的任何其他内容。

另一种方法是编写我自己的 "reset" 方法。我担心如果我走那条路,我最终会遇到与无法重置状态的某些部分有关的错误。

不,没有。如果您不打算进行回收,我建议您只创建一个新的是确保它的最简单方法。一般来说,这也不是一件非常有效的事情——有很多状态可以改变,如果你试图设置所有的状态,你最终会浪费很多周期。一般来说,设置这些东西的代码有某种重置方法,当你从模型中解除绑定视图时调用,它会清除它改变的东西的子集。