无效的上下文配置

时间:2019-03-05 13:54:13

标签: android configuration resources android-context onconfigurationchanged

我有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
        }
    }
}

0 个答案:

没有答案