01.什么是DecorView
DecorView是FrameLayout的子类,它可以被认为是Android视图树的根节点视图。
- DecorView作为顶级View,一般情况下它内部包含一个竖直方向的LinearLayout,在这个LinearLayout里面有上下三个部分,上面是个ViewStub,延迟加载的视图(应该是设置ActionBar,根据Theme设置),中间的是标题栏(根据Theme设置,有的布局没有),下面的是内容栏。
DecorView是FrameLayout的子类,它可以被认为是Android视图树的根节点视图。
Android onAttachedToWindow 和 onDetachedFromWindow
报错日志如下:
1 | lang.IllegalStateException: Can not perform this action after onSaveInstanceState at android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1493) |
如下所示
1 | public PopupWindow (Context context) |
一般都是在使用AlertDialog,但AlertDialog主要也是继承自Dialog。下面我们来分析分析Dialog源码。
最简单用法如下所示
1 | private AlertDialog alertDialog=null; |
Toast只会弹出一段信息,告诉用户某某事情已经发生了,过一段时间后就会自动消失。它不会阻挡用户的任何操作。
Toast是没有焦点,而且Toast显示的时间有限,过一定的时间就会自动消失。
Android Activity、Window、View 三者关系