如何将左侧导航栏放在状态栏后面? -SystemUI-Android-AOSP

时间:2018-08-22 14:37:28

标签: android android-source android-windowmanager

我已使用Android AOSP项目中的TYPE_NAVIGATION_BAR_PANEL将“底部导航栏”自定义为“左侧导航栏”。但是问题在于它与状态栏重叠。需要将导航栏放在状态栏后面。

1 个答案:

答案 0 :(得分:0)

我认为这是有意的。 StatusBar具有比导航类型低的图层类型。这意味着导航视图位于StatusBar的前面。

/**
 * Window type: the status bar.  There can be only one status bar
 * window; it is placed at the top of the screen, and all other
 * windows are shifted down so they are below it.
 * In multiuser systems shows on all users' windows.
 */
public static final int TYPE_STATUS_BAR         = FIRST_SYSTEM_WINDOW;
.....
/**
 * Window type: Navigation bar (when distinct from status bar)
 * In multiuser systems shows on all users' windows.
 * @hide
 */
public static final int TYPE_NAVIGATION_BAR = FIRST_SYSTEM_WINDOW+19;

作为一个四处走动,您可以修改导航栏的布局参数。您可以将y设置为getStatusBarHeight(),将重力设置为Gravity.BOTTOM-从未测试过。