カテゴリー:
はじめてのAndroidプログラミング 第3版
閲覧数:417 配信日:2018-06-18 11:07
SensorEventListenerを追加
エラー表示されている箇所でAlt+Enter
・Implement members
・ok
エラー表示がなくなるまで繰り返す
・Implement members
・ok
センサーの値をデバッグ出力する
P183
▼work/w4c/android0/accball3/MainActivity.kt
package work.w4c.android0.accball3
import android.content.Context
import android.hardware.Sensor
import android.hardware.SensorEvent
import android.hardware.SensorEventListener
import android.hardware.SensorManager
import android.os.Bundle
import android.support.v7.app.AppCompatActivity
import android.util.Log
class MainActivity : AppCompatActivity(), SensorEventListener {
override fun onSensorChanged(event: SensorEvent?) {
if (event == null) return
if (event.sensor.type == Sensor.TYPE_ACCELEROMETER) {
Log.d("MainActivity",
"x=${event.values[0].toString()}" +
"y=${event.values[1].toString()}" +
"z=${event.values[2].toString()}")
}
}
override fun onAccuracyChanged(sensor: Sensor?, accuracy: Int) {
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
override fun onResume() {
super.onResume()
val sensorManager = getSystemService(Context.SENSOR_SERVICE)
as SensorManager
val accSensor = sensorManager.getDefaultSensor(
Sensor.TYPE_ACCELEROMETER)
sensorManager.registerListener(
this, accSensor,
SensorManager.SENSOR_DELAY_GAME)
}
override fun onPause() {
super.onPause()
val sensorManager = getSystemService(Context.SENSOR_SERVICE)
as SensorManager
sensorManager.unregisterListener(this)
}
}