Как отключить прокрутку GridView в Android?
Я использую GridView для игрового поля. В последнее время некоторые пользователи столкнулись с проблемами с вертикальной прокруткой платы (на телефонах Samsung Galaxy/Vibrant, работающих под управлением 2.2). Эта ошибка не возникает на моем Nexus One.
Один пользователь произвел несколько скриншотов проблемы.
Как я могу заблокировать GridView? Есть ли способ отключить прокрутку?
Ответы
Ответ 1
Попробуйте добавить или переопределить setOnTouchListener
для GridView
, затем в методе onTouch
вы можете использовать подобный код, чтобы сделать gridView
не прокручиваемым
Джава
gridView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
return event.getAction() == MotionEvent.ACTION_MOVE;
}
});
Котлин
gridView.setOnTouchListener { v, event ->
event.action == MotionEvent.ACTION_MOVE
}
Ответ 2
Вы можете попробовать setEnabled (false), хотя у него могут быть и другие побочные эффекты. GridView действительно не предназначен для использования так, как вы его используете. Вы должны создать свой собственный вид или макет. Вы также можете использовать TableLayout.