Я работал над этим целый день и до сих пор не могу понять это.Я делаю приложение для Android для устройства Android Wear и не могу понять, как обнаружить вращающееся колесо на устройстве для получения событий прокрутки.Я знаю, что по умолчанию поворотное колесо назначено для ScrollViews и Listview и т. Д., И у меня это работает, но я не могу заставить его работать на простом NumberPicker.Как подсказывают Google API, я использовал OnGenericMotionListener и, хотя он не выдает никаких ошибок, он все равно ничего не получает.
Я бы хотел, чтобы NumberPicker прокручивал вращающееся колесо.Мой код выглядит следующим образом.Ничто в logcat не показывает никаких ошибок:
MyActivity.this.setContentView(R.layout.number_picker);
NumberPicker numberPicker = (NumberPicker) findViewById(R.id.numberPicker1);
numberPicker.setDescendantFocusability(NumberPicker.FOCUS_BLOCK_DESCENDANTS);
numberPicker.setMaxValue(100);
numberPicker.setMinValue(0);
numberPicker.setWrapSelectorWheel(true);
numberPicker.setOnValueChangedListener( new NumberPicker.
OnValueChangeListener() {
public void onValueChange(NumberPicker picker, int
oldVal, int newVal) {
}
});
numberPicker.setOnGenericMotionListener(new OnGenericMotionListener() {
@Override
public boolean onGenericMotion(View v, MotionEvent event) {
Log.i(TAG, "Received scroll event:" + event.getAction());
switch (event.getAction()) {
case MotionEvent.ACTION_SCROLL:
}
return false;
}
});