View生命周期学习

大致可分为如下8个方法:
  • constructor:构造函数
  • onfinishInflate:xml文件加载完成后调用
  • onAttachedToWindow:该方法在当前View被附到一个window上时被调用
  • onMesure(int,int):计算当前View及其所有子View尺寸大小需求时会被调用。
  • onLayout(boolean,int,int,int,int):当前View需要为其子View分配尺寸和位置时会被调用
  • onSizeChange(int,int,int,int):当前View尺寸变化时被调用
  • onDraw(android.graphics.Canvas):View需要呈现其内容时被调用
  • onDeachedFromWindow():在当前View从一个window上分离时被调用

另外
1、Creation(创建)

  • Constructors(构造函数):有一种形式的构造函数会在View在代码中被创建时调用,另一种形式的构造函数会在View从layout加载出来时被调用。
    第二种形式的构造函数会解析和应用layout文件中定义的任何属性。

  • onFinishInflate():该方法当View及其子View从XML文件中加载完成后会被调用。

2、Layout(布局)

  • onMeasure(int, int):该方法在计算当前View及其所有子View尺寸大小需求时会被调用。

  • onLayout(boolean, int,int,int,int):该方法在当前View需要为其子View分配尺寸和位置时会被调用。

  • onSizeChanged(int, int, int, int):该方法在当前View尺寸变化时被调用。

3、Drawing(绘制)

  • onDraw(android.graphics.Canvas):该方法在当前View需要呈现其内容时被调用。

4、Event processing(事件处理)

  • onKeyDown(int, KeyEvent):该方法在一个物理按键事件发生时被调用。

  • onKeyUp(int, KeyEvent):该方法在一个物理按键弹起事件发生时被调用。

  • onTrackballEvent(MotionEvent):该方法在一个轨迹球运动事件发生时被调用。

  • onTouchEvent(MotionEvent):该方法在一个触摸屏幕运动事件发生时被调用。

5、Focus(焦点)

  • onFocusChange(boolean,int,android.graphics.Rect):当前View获得或失去焦点时被调用。

  • onWindowFocusChanged(boolean):该方法在包含当前View的window获得或失去焦点时被调用。

6、Attaching(附着)

  • onAttachedToWindow():该方法在当前View被附到一个window上时被调用。

  • onDetachedFromWindow():该方法在当前View从一个window上分离时被调用。

  • onVisibilityChanged(View, int):该方法在当前View或其祖先的可见性改变时被调用。

  • onWindowVisibilityChanged(int):该方法在包含当前View的window可见性改变时被调用。

参考大神:
Android View的生命周期

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • View生命周期相关方法 View是什么?官方源码注释中的定义:这个类是用户接口的基础构件。View表示屏幕上的一...
    RazorZ阅读 56,939评论 10 97
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,586评论 18 399
  • 0 前言 Activity有生命周期,同样的,View从添加到界面到从界面中移除也有一个生命周期,在官方文档中介绍...
    sososeen09阅读 13,051评论 2 23
  • 衡量皇冠战争水平高低的就是杯数,而决定杯数高低的是卡牌等级和战术。 战术可以变化,但卡牌等级是一个硬要求,卡牌等级...
    银河星海阅读 2,463评论 0 0
  • 今天哥不太开心。
    GandA阅读 1,337评论 0 1

友情链接更多精彩内容