Ash*_*win 0 android android-sensors
我使用以下代码注册和注销SensorEventListener.
//Get the Toggle Button
final ToggleButton tb=(ToggleButton) findViewById(R.id.activate);
//Listener for ToggleButton
tb.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
if(tb.isChecked()){
//Register the sensor
//smanager.
smanager.registerListener(this, smanager.getDefaultSensor.TYPE_LINEAR_ACCELERATION,SensorManager.SENSOR_DELAY_NORMAL);
Log.v(classname, "Sensor Listener Unregistered");
}
else{
//deRegister the Sensor
// Unregister the listener
smanager.unregisterListener(this);
Log.v(classname, "Sensor Listener Unregistered");
}
}
});
Run Code Online (Sandbox Code Playgroud)
但是我收到以下错误.
The method registerListener(SensorListener, Sensor, int) is not applicable for the arguments new View.onClickListener(),{},Sensor,int
Run Code Online (Sandbox Code Playgroud)
onPause()在活动方法中编写相同的代码时,我没有收到此错误.有什么问题以及如何纠正这个问题?
this是指OnClickListener而不是你的Activity.
把它改成这个:
smanager.registerListener(YourActivityClass.this, smanager.getDefaultSensor.TYPE_LINEAR_ACCELERATION, SensorManager.SENSOR_DELAY_NORMAL);
Run Code Online (Sandbox Code Playgroud)
编辑以回答您的context评论:
registerListener()需要一个SensorListener.根据你的说法
它适用于onResume()
评论,我假设你Activity实现了SensorListener接口.上下文本身并没有实现它,因为你得到了同样的错误.
| 归档时间: |
|
| 查看次数: |
5870 次 |
| 最近记录: |