美文网首页UIAndroid知识
Android系统全屏时悬浮窗或者悬浮球向上移动的问题

Android系统全屏时悬浮窗或者悬浮球向上移动的问题

作者: 小蛤C | 来源:发表于2016-11-23 01:35 被阅读0次

    当系统全屏时,很多悬浮窗会向上移动一小段距离,原因窗口布局是从状态栏之后开始的,全屏时没有状态栏了,所以会向上移动,给窗口加上
    WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN 可以解决这个问题,这个 flag 经常和
    WindowManager.LayoutParams.FLAG_LAYOUT_INSET_DECOR 一起使用。

    mParams.flags = WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN;

    /** Window flag: place the window within the entire screen, ignoring * decorations around the border (such as the status bar). The * window must correctly position its contents to take the screen * decoration into account. This flag is normally set for you * by Window as described in {@link Window#setFlags}. */
    public static final int FLAG_LAYOUT_IN_SCREEN = 0x00000100;

    /** Window flag: a special option only for use in combination with * {@link #FLAG_LAYOUT_IN_SCREEN}. When requesting layout in the * screen your window may appear on top of or behind screen decorations * such as the status bar. By also including this flag, the window * manager will report the inset rectangle needed to ensure your * content is not covered by screen decorations. This flag is normally * set for you by Window as described in {@link Window#setFlags}.*/
    public static final int FLAG_LAYOUT_INSET_DECOR = 0x00010000;

    相关文章

      网友评论

        本文标题:Android系统全屏时悬浮窗或者悬浮球向上移动的问题

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