美文网首页
android.view.Window

android.view.Window

作者: kfcgm | 来源:发表于2017-04-22 17:33 被阅读0次

    就算是初学Android的都碰到过这样的语句:

    Window window = Activity.getWindow();

    window.requestFeature(Window.FEATURE_NO_TITLE);

    今天又碰到一个Window的一个新的静态常量属性

    window.requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);

    官网上对该常量给出的解释是:Flag for requesting that window content changes should be animated using a TransitionManager.

    翻译一下即:用于请求该窗口内容更改的标志,应使用TransitionManager进行动画处理。

    ==========================================================================

    在查上面的内容的过程中,又涉及到了Activity、View、Window之间的三角关系,找了一篇文章,写的很详细,没咋看懂,链接在此

    收获了几个点:

    1、有View即视图地方就一定有Window,视图是无法脱离Window这个抽象的东西独立存在的。

    2、Android中可以提供视图的地方有Activity,DIalog,Toast,除此之外,还有一些依托Window而实现的视图,比如PopupWindow,Menu,他们也是视图,有视图的地方就有Window,因此Activity,Dialog,Toast等视图都对应着一个Window。

    3、DecorView作为顶级View,一般情况下它内部会包含一个竖直方向的LinearLayout,在这个LinearLayout里面有上下两个部分,上面是标题栏,下面是内容栏,其中标题栏一般由Activity的Theme样式所决定。在Activity中我们通过setContentView所设置的布局文件其实就是被加到内容栏之中的。

    4、一个比喻总结下Activity Window View三只之间的关系:Activity像一个工匠(控制单元),Window像窗户(承载模型),View像窗花(显示视图)。

    相关文章

      网友评论

          本文标题:android.view.Window

          本文链接:https://www.haomeiwen.com/subject/xrmszttx.html