使用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 );