У меня есть приложение, в котором я хочу, чтобы запустить перехватчик для акселерометра при нажатии кнопки, поэтому я попытался так:Как зарегистрировать прослушиватель датчиков внутри метода onClick на кнопке?
private SensorManager sensorManager;
@Override
public void onCreate (Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.storing_act);
Button start = (Button)findViewById(R.id.startl);
start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
sensorManager=(SensorManager)getSystemService(SENSOR_SERVICE);
sensorManager.registerListener(this,
sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER),
SensorManager.SENSOR_DELAY_NORMAL);
}
});
но появляется сообщение с
«The метод registerListener (SensorEventListener, датчик, целый) в типе SensorManager не применяется для аргументов (новый View.OnClickListener() {}, датчик, целый)»
есть ли способ решить эту проблему легко? Должен ли я переопределить любой другой метод? Благодаря
вместо этого вы должны пройти YouActivityName.this –
Вы пытаетесь зарегистрировать 'View' слушателя к менеджеру датчика, который ожидает [SensorEventListener] (http://developer.android.com/reference/android /hardware/SensorEventListener.html), как сообщает ошибка. – adrianp
Спасибо, теперь он отлично работает – Burakito