android.view.View#getSystemUiVisibility ( )源码实例Demo

下面列出了android.view.View#getSystemUiVisibility ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: DevUtils   文件: BarUtils.java
/**
 * 设置 Navigation Bar 是否高亮模式
 * @param window      {@link Window}
 * @param isLightMode 是否高亮模式
 * @return {@code true} success, {@code false} fail
 */
public static boolean setNavBarLightMode(final Window window, final boolean isLightMode) {
    if (window != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        View decorView = window.getDecorView();
        int vis = decorView.getSystemUiVisibility();
        if (isLightMode) {
            vis |= View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
        } else {
            vis &= ~View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
        }
        decorView.setSystemUiVisibility(vis);
        return true;
    }
    return false;
}
 
源代码2 项目: styT   文件: StatusbarColorUtils.java
/**
 * 设置状态栏颜色
 *
 * @param view
 * @param dark
 */
private static void setStatusBarDarkIcon(View view, boolean dark) {
    int oldVis = view.getSystemUiVisibility();
    int newVis = oldVis;
    if (dark) {
        newVis |= SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    } else {
        newVis &= ~SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    }
    if (newVis != oldVis) {
        view.setSystemUiVisibility(newVis);
    }
}
 
源代码3 项目: DevUtils   文件: BarUtils.java
/**
 * 获取 Navigation Bar 是否高亮模式
 * @param window {@link Window}
 * @return {@code true} yes, {@code false} no
 */
public static boolean isNavBarLightMode(final Window window) {
    if (window != null && Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        View decorView = window.getDecorView();
        int vis = decorView.getSystemUiVisibility();
        return (vis & View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR) != 0;
    }
    return false;
}
 
源代码4 项目: status-bar-compat   文件: LightStatusBarCompat.java
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override
public void setLightStatusBar(Window window, boolean lightStatusBar) {
    // 设置浅色状态栏时的界面显示
    View decor = window.getDecorView();
    int ui = decor.getSystemUiVisibility();
    if (lightStatusBar) {
        ui |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    } else {
        ui &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    }
    decor.setSystemUiVisibility(ui);

}
 
源代码5 项目: TheGreatAdapter   文件: ViewUtils.java
public static void clearLightStatusBar(@NonNull View view) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        int flags = view.getSystemUiVisibility();
        flags &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
        view.setSystemUiVisibility(flags);
    }
}
 
源代码6 项目: 365browser   文件: WebappActivity.java
/**
 * Sets activity's decor view into an immersive mode.
 * If immersive mode is not supported, this method no-ops.
 */
private void enterImmersiveMode() {
    // Immersive mode is only supported in API 19+.
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) return;

    if (mSetImmersiveRunnable == null) {

        final View decor = getWindow().getDecorView();

        mSetImmersiveRunnable = new Runnable() {
            @Override
            public void run() {
                int currentFlags = decor.getSystemUiVisibility();
                int desiredFlags = currentFlags | IMMERSIVE_MODE_UI_FLAGS;
                if (currentFlags != desiredFlags) {
                    decor.setSystemUiVisibility(desiredFlags);
                }
            }
        };

        // When we enter immersive mode for the first time, register a
        // SystemUiVisibilityChangeListener that restores immersive mode. This is necessary
        // because user actions like focusing a keyboard will break out of immersive mode.
        decor.setOnSystemUiVisibilityChangeListener(new OnSystemUiVisibilityChangeListener() {
            @Override
            public void onSystemUiVisibilityChange(int newFlags) {
                if ((newFlags & View.SYSTEM_UI_FLAG_FULLSCREEN) == 0) {
                    asyncSetImmersive(RESTORE_IMMERSIVE_MODE_DELAY_MILLIS);
                }
            }
        });
    }

    asyncSetImmersive(0);
}
 
源代码7 项目: Android-utils   文件: BarUtils.java
/**
 * Set the status bar's light mode.
 *
 * @param window      The window.
 * @param isLightMode True to set status bar light mode, false otherwise.
 */
public static void setStatusBarLightMode(@NonNull final Window window,
                                         final boolean isLightMode) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        View decorView = window.getDecorView();
        int vis = decorView.getSystemUiVisibility();
        if (isLightMode) {
            vis |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
        } else {
            vis &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
        }
        decorView.setSystemUiVisibility(vis);
    }
}
 
源代码8 项目: Telegram-FOSS   文件: AndroidUtilities.java
public static void setLightNavigationBar(Window window, boolean enable) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        final View decorView = window.getDecorView();
        int flags = decorView.getSystemUiVisibility();
        if (enable) {
            flags |= View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
        } else {
            flags &= ~View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR;
        }
        decorView.setSystemUiVisibility(flags);
    }
}
 
源代码9 项目: AndroidNavigation   文件: AppUtils.java
public static void setNavigationBarHidden(Window window, boolean hidden) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        View decorView = window.getDecorView();
        int systemUi = decorView.getSystemUiVisibility();
        if (hidden) {
            systemUi |= View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
            systemUi |= View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
        } else {
            systemUi &= ~View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
            systemUi &= ~View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY;
        }
        window.getDecorView().setSystemUiVisibility(systemUi);
    }
}
 
源代码10 项目: Android-utils   文件: BarUtils.java
/**
 * Is the nav bar light mode.
 *
 * @param window The window.
 * @return {@code true}: yes<br>{@code false}: no
 */
public static boolean isNavBarLightMode(@NonNull final Window window) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
        View decorView = window.getDecorView();
        int vis = decorView.getSystemUiVisibility();
        return (vis & View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR) != 0;
    }
    return false;
}
 
源代码11 项目: ImmersionBar   文件: SpecialBarFontUtils.java
/**
 * 设置状态栏颜色
 *
 * @param view
 * @param dark
 */
private static void setStatusBarDarkIcon(View view, boolean dark) {
    int oldVis = view.getSystemUiVisibility();
    int newVis = oldVis;
    if (dark) {
        newVis |= SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    } else {
        newVis &= ~SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    }
    if (newVis != oldVis) {
        view.setSystemUiVisibility(newVis);
    }
}
 
源代码12 项目: dynamic-utils   文件: DynamicViewUtils.java
/**
 * Set light status bar if we are using light primary color on API 23 and above devices.
 *
 * @param view The view to get the system ui flags.
 * @param light {@code true} to set the light status bar.
 */
@TargetApi(Build.VERSION_CODES.M)
public static void setLightStatusBar(@NonNull View view, boolean light) {
    if (DynamicSdkUtils.is23()) {
        int flags = view.getSystemUiVisibility();
        if (light) {
            flags |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
        } else {
            flags &= ~View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
        }

        view.setSystemUiVisibility(flags);
    }
}
 
源代码13 项目: DoraemonKit   文件: UIUtils.java
public static boolean checkFullScreenByCode(Context context) {
    if (context instanceof Activity) {
        Window window = ((Activity) context).getWindow();
        if (window != null) {
            View decorView = window.getDecorView();
            if (decorView != null) {
                return (decorView.getSystemUiVisibility() & View.SYSTEM_UI_FLAG_FULLSCREEN) == View.SYSTEM_UI_FLAG_FULLSCREEN;
            }
        }
    }
    return false;
}
 
源代码14 项目: MNProgressHUD   文件: SpecialBarFontUtils.java
/**
 * 设置状态栏颜色
 *
 * @param view
 * @param dark
 */
private static void setStatusBarDarkIcon(View view, boolean dark) {
    int oldVis = view.getSystemUiVisibility();
    int newVis = oldVis;
    if (dark) {
        newVis |= SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    } else {
        newVis &= ~SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
    }
    if (newVis != oldVis) {
        view.setSystemUiVisibility(newVis);
    }
}
 
源代码15 项目: paper-launcher   文件: SystemBarUtil.java
public static void enableLightStatusBar(Activity activity) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        View view = activity.getWindow().getDecorView();

        int flags = view.getSystemUiVisibility();
        flags |= View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
        view.setSystemUiVisibility(flags);
    }
}
 
源代码16 项目: react-native-navigation   文件: Presenter.java
private void setStatusBarVisible(Bool visible) {
    View decorView = activity.getWindow().getDecorView();
    int flags = decorView.getSystemUiVisibility();
    if (visible.isFalse()) {
        flags |= View.SYSTEM_UI_FLAG_FULLSCREEN;
    } else {
        flags &= ~View.SYSTEM_UI_FLAG_FULLSCREEN;
    }
    decorView.setSystemUiVisibility(flags);
}
 
源代码17 项目: mr-mantou-android   文件: SystemUiVisibilityUtil.java
public static boolean hasFlags(View view, int flags) {
    return (view.getSystemUiVisibility() & flags) == flags;
}
 
源代码18 项目: android-browser-helper   文件: Utils.java
private static void addSystemUiVisibilityFlag(Activity activity, int flag) {
    View root = activity.getWindow().getDecorView().getRootView();
    int visibility = root.getSystemUiVisibility();
    visibility |= flag;
    root.setSystemUiVisibility(visibility);
}
 
源代码19 项目: android_9.0.0_r45   文件: DreamService.java
private boolean getSystemUiVisibilityFlagValue(int flag, boolean defaultValue) {
    View v = mWindow == null ? null : mWindow.getDecorView();
    return v == null ? defaultValue : (v.getSystemUiVisibility() & flag) != 0;
}
 
源代码20 项目: youqu_master   文件: WindowUtil.java
private static void showNavigationBar(Context context) {
    View decorView = scanForActivity(context).getWindow().getDecorView();
    int systemUiVisibility = decorView.getSystemUiVisibility();
    systemUiVisibility &= ~FLAGS;
    decorView.setSystemUiVisibility(systemUiVisibility);
}
 
 方法所在类
 同类方法