使用Kotlin结合整数标志的最佳方法是什么?
在Java中,我们经常通过|来结合标志 运营商。
例如
getWindow().getDecorView().setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN );
我似乎无法在科特林找到相应的操作员。 任何人都知道一个方便的方法来结合Kotlin的整数标志?
只需使用or
:
getWindow().getDecorView().setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION or View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN );
这可能有点混乱。 你可以创建一个小助手扩展函数(或其他),使其更具可读性:
infix fun Int.with(x: Int) = this.or(x) getWindow().getDecorView().setSystemUiVisibility( View.SYSTEM_UI_FLAG_LAYOUT_STABLE with View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION with View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN );