前言

对于Android开发,这两个onDetachedFromWindow()和onAttachedToWindow()方法应该不陌生。

今天有空,这里整理一下。(都是陈年旧事了)

好记性不如烂笔头

总结

这两个方法可以做View生命的开始和结束,再这两个方法内可以做一下对应的开始和结束操作。

正文

通过之前我们整理的《Android自定义view生命周期》,View的生命周期方法打印,摘抄如下:

    #  进入
    onFinishInflate:

    onAttachedToWindow:

    onWindowVisibilityChanged:

    onVisibilityChanged:

    onMeasure:

    onLayout:

    onDraw:

    # 退出

    onWindowVisibilityChanged:

    onVisibilityChanged:

    onDetachedFromWindow:

也就是可以说onAttachedToWindow()和onDetachedFromWindow()可以作为一个View的生命的开始和结束。

因此,当我自定义View,重写上面俩个方法,然后对一些状态的监听处理,比如WiFi的显示,电量的显示,声音状态的显示等。

    @Override
    protected void onAttachedToWindow() {
        super.onAttachedToWindow();
         //注册监听,初始化值等
    }

    @Override
    protected void onDetachedFromWindow() {
        super.onDetachedFromWindow();
        //取消监听
    }

参考文章

  1. Android文档View
  2. Android自定义view生命周期
  3. onAttachedToWindow () 和 onDetachedFromWindow ()

相关文章

暂无评论

none
暂无评论...