我有util类来使设备旋转(下面的示例)。它在应用程序上下文中运行。当我的手机处于纵向模式时,它将返回人像。但是,当我将手机旋转到横向时,此方法仍返回PORTRAIT。
当我具有值和具有一个布尔标志的值-land时,也会发生同样的事情。
在整个过程生命周期中,应用程序上下文的配置似乎保持不变。例如。它会保留开始时的配置。
有人可以确认吗?如果是这样,我应该如何解决这个问题?
@Singleton
class DeviceInfo @Inject constructor(private val context: Context) {
enum class DeviceOrientation {
PORTRAIT, LANDSCAPE
}
fun getOrientation(): DeviceOrientation {
val orientation = context.resources.configuration.orientation
return when (orientation) {
Configuration.ORIENTATION_LANDSCAPE -> DeviceOrientation.LANDSCAPE
else -> DeviceOrientation.PORTRAIT
}
}
}