onAttacheToWidow和onDetachedFromWidow方法
1.onAttachedToWindow方法是在Act resume的时候被调用的,也就是act对应的window被添加的时候,且每个view只会被调用一次,父view的调用在前,不论view的visibility状态都会被调用,适合做些view铁定的初始化操作;
2.onDetachedFromWindow方法实在Act destroy的时候被调用的,也就是act对应的window被删除的时候,且每个view只会被调用一次,父view的调用在后,也不论view的visibility状态都会被调用,适合做最后的清理操作。
3.这些结论也正好解释了方法名里带有window的原因,因为在Activity里不止是Activity,这里说的内容同样适用于Dialog/Toast,Window只是个虚的概念,是Android抽象出来的,最终操作的实体还是View,这也说明了前面的WindowManager接口为啥是从ViewManager接口派生的,因为所有一切的基石归根结底还是对View的操作。
setSelection()和TextUtils.isEmpty()方法
setSelection()方法将输入光标移动到文本的末尾位置以便于继续输入。
对字符串进行非空判断的时候使用了TextUtils.isEmpty()方法,可以一次进行对两种空值的判断。当传入的字符串等于null或者等于空字符串时。