我们在开发中,希望监听View的attached或detached状态,来进行比如eventbus的注册与解注册的操作,非常的方便实用。

可以使用系统给我们提供的listener,代码使用如下:

mView.addOnAttachStateChangeListener(new View.OnAttachStateChangeListener() {
@Override
public void onViewAttachedToWindow(View v) {
EventBus.getDefault().register(this);
} @Override
public void onViewDetachedFromWindow(View v) {
EventBus.getDefault().unregister(this);
}
});

比如当View attached的时候可以做一些init初始化的操作,View detached时候,可以做一些destroy的操作。

05-02 19:35