Android View生命周期

自定义view时我们第一想到的大概就是onMeasure,onLayout,onDraw这些方法(我只想到这些),但是对于说到view的生命周期就感觉又熟悉又陌生了.

View的生命周期相关的方法

1.构造方法
这个没什么好说的,这里主要做属性的获取,数据初始化.
2.onFinishInflate()
该方法当View及其子View从XML文件中加载完成后被调用
3.onAttachedToWindow()
当View被附加到Window上时调用此方法.此方法会在onDraw(Canvas)方法之前调用,但是可能在onMeasure(int, int)之前或之后调用.
4.onMeasure(int, int)
该方法在计算当前View及其所有子View尺寸大小需求时会被调用
5.onSizeChanged(int, int, int, int)
该方法在当前View尺寸变化时被调用,该方法是由onMeasure(int, int)测量之后如果尺寸改变则会调用此方法
6.onLayout(boolean, int, int, int, int)
该方法在当前View需要为其子View分配尺寸和位置时会被调用,该方法在onMeasure(int, int)后调用.
7.onDraw(Canvas)
该方法在当前View需要呈现其内容时被调用.
8.onDetachedFromWindow()
当View从一个window上分离时被调用.

View的其他方法

除了上面的生命周期方法外还有一些方法,在下面也列出来.
1.onKeyDown(int, KeyEvent)
该方法在一个物理按键事件发生时被调用.
2.onKeyUp(int, KeyEvent)
该方法在一个物理按键弹起事件发生时被调用
3.onTouchEvent(MotionEvent)
该方法在一个触摸屏幕运动事件发生时被调用
4.onHoverEvent(MotionEvent)
该方法在指针悬停事件发生时被调用
5.onFocusChanged(boolean, int, Rect)
该方法在当前View获得或失去焦点时被调用
6.onWindowFocusChanged(boolean)
当包含该View的window焦点改变时被调用
7.onVisibilityChanged(View, int)
当view的可见性发生变化时调用
8.onWindowVisibilityChanged(int)
当包含该View的window可见性改变时调用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值