Flutter - InkWell не реагирует на onTap внутри гибкого - PullRequest
0 голосов
/ 25 октября 2018

Я пытаюсь выяснить, почему метод onTap() внутри моего InkWell не работает.Виджет InkWell находится внутри виджета Flexible.Этот Flexible виджет также находится внутри Row.

Вот мой код:

TextEditingController controller = new TextEditingController();

@override
void dispose(){
    super.dispose();
    controller.dispose();
}

@override
    Widget build(BuildContext context) {
      return Card(        
        child: Container(          
          child: Row(
            children: <Widget>[
              Flexible(                
                child: InkWell(
                  onTap: () => print("Search"), //Is not printing anything
                  child: TextField(                    
                    controller: controller,
                    decoration: InputDecoration(
                      border: InputBorder.none,
                      hintText: "Searching..."
                    ),                 
                  ),
                ),
              )
            ],
          ),
          decoration: BoxDecoration(
            borderRadius: BorderRadius.all(
              Radius.circular(8.0)
            ),
          ),
        ),     
      );
    }

Я не знаю, как решить мою проблему.Было бы здорово, если бы кто-нибудь смог решить это XD.

1 Ответ

0 голосов
/ 25 октября 2018

Это должно решить эту проблему:

Widget build(BuildContext context) {
    return Card(
      child: Container(
        child: Row(
          children: <Widget>[
            Flexible(
              child: InkWell(
                onTap: () => print("Search"), //Is not printing anything
                child: IgnorePointer(
                  child: TextField(
                    controller: controller,
                    decoration: InputDecoration(
                        border: InputBorder.none,
                        hintText: "Searching..."
                    ),
                  ),
                ),
              ),
            )
          ],
        ),
        decoration: BoxDecoration(
          borderRadius: BorderRadius.all(
              Radius.circular(8.0)
          ),
        ),
      ),
    );

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...