Android 屏幕鎖定為portrait或者landscape時手機旋轉(zhuǎn)方向的獲取
屏幕鎖定時不會觸發(fā)onConfigurationChanged
,也不能從Display的Orientation中獲取手機的真實旋轉(zhuǎn)方向.
需要我們自己通過傳感器獲取.
這里寫了一個庫去獲取屏幕旋轉(zhuǎn)事件.
依賴
allprojects {
repositories {
//...
maven { url 'https://www.jitpack.io' }
}
}
dependencies {
implementation 'com.github.dqh147258:InertOrientation:1.0.+'
}
使用
class MainActivity : AppCompatActivity() {
private val listener = SmartInertOrientationListener(this) {
Log.d("Debug", "current orientation: $it")
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
源碼
原理
原理很簡單,自己看源碼去,哼╭(╯^╰)╮!