Прокрутка списка меню без IgnorePointer - PullRequest
0 голосов
/ 30 апреля 2020

Я создал список меню с GridView. Но когда я выполняю прокрутку, происходит сбой, потому что прокрутка внутри списка содержит родительский элемент для прокрутки, как это изображение

enter image description here

Моя проблема исчезла, когда я пытался обернуть GridView внутри IgnorePointer. Но если я использую IgnorePointer, это не позволяет мне щелкнуть / коснуться моего пункта меню.

Как лучше всего исправить мою проблему?

Мой код (без IgnorePointer)

@override
Widget build(BuildContext context) {
  return Container(
    margin: const EdgeInsets.only(top: 10.0, bottom: 10.0),
    width: MediaQuery.of(context).size.width,
    child: GridView.count(
      shrinkWrap: true,
      crossAxisCount: 4,
      children: List.generate(
        menuItems.length,
        (index) {
          return Column(
            children: <Widget>[
              InkWell(
                onTap: () {
                  showShortToast("Menu clicked " + index.toString());
                },
                child: Container(
                  width: 70.0,
                  height: 70.0,
                  decoration: BoxDecoration(
                    borderRadius: BorderRadius.all(Radius.circular(12.0)),
                    border: Border.all(color: Colors.grey[300]),
                  ),
                  child: Center(
                    child: Image.asset(menuItems[index]["image"]),
                  ),
                ),
              ),
              Expanded(
                child: Text(
                  menuItems[index]["text"],
                  textAlign: TextAlign.center,
                  style: TextStyle(
                    fontSize: 13.0,
                  ),
                ),
              ),
            ],
          );
        },
      ),
    ),
  );
}

1 Ответ

1 голос
/ 30 апреля 2020

Если вы хотите отключить прокрутку в виде сетки, вы можете сделать следующее:

child: GridView.count(
          physics: NeverScrollableScrollPhysics(), //Add physics
          shrinkWrap: true,
          crossAxisCount: 4,
          ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...