颤振 - 键盘没有出现,并且不停留在所选字段

问题描述:

键盘与TextField无法正常工作。颤振 - 键盘没有出现,并且不停留在所选字段

下面的代码我把14 TextField,但是当点击例如在字段14键盘不会出现,它不低于TextField挖掘。

你能帮我解决这个键盘问题没有出现,并没有让我在选定的领域下是?

enter image description here

import 'package:flutter/material.dart'; 

void main() { 
    runApp(new MaterialApp(home: new HomePage())); 
} 

class HomePage extends StatefulWidget { 
    @override 
    HomePageState createState() => new HomePageState(); 
} 

class HomePageState extends State<HomePage> { 
    final TextEditingController _controller = new TextEditingController(); 

    @override 
    Widget build(BuildContext context) {  
    return new Scaffold(
     body: new Stack(
     children: <Widget>[ 
      new ListView(
      shrinkWrap: true, 
      children: <Widget>[ 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 1', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 2', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 3', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 4', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 5', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 6', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 7', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 8', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 9', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 10', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 11', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 12', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 13', 
       ), 
      ), 
       new TextField(
       controller: _controller, 
       decoration: new InputDecoration(
        hintText: 'Type something 14', 
       ), 
      ),    
      ], 
     )   
     ] 
    ) 
    ); 
    } 
} 
+0

前几天我有类似的问题 - 键盘出现,如果你把应用程序在后台,然后再次在前台? (然后再次点击'TextField'?)。我知道这并不能帮助你,但是看到它是否是相同的行为会很有趣...... –

+0

@ david.mihola但我该怎么做呢? – rafaelcb21

您不应该让所有文本字段共享相同的TextEditingController。每个使用一个单独的控制器。

+0

谢谢你的键盘出现!但由于它们是键盘后面的最后一个,所以字段11至14。是否可以将键盘留在选定的字段下? – rafaelcb21

+2

这听起来像是你正在运行到https://github.com/flutter/flutter/issues/10826,它有一个问题的解决方法,直到最终的修复程序到位。 –

+0

谢谢,你的代码在https://gist.github.com/collinjackson/50172e3547e959cba77e2938f2fe5ff5完美工作(在57行我增加到600毫秒)。你知道什么时候最终的解决方案会来吗? – rafaelcb21

我无法重现的错误,一切似乎都正常工作。检查您的Flutter SDK是否已更新(运行flutter doctor)。您是否尝试将目标平台更改为IOS以查看错误是否仍然存在?

+0

我没有mac和iOS。你尝试在iOS上玩吗? – rafaelcb21

+0

我试过了,一切都很顺利。您可以通过在您的应用主题中设置自定义TargetPlatform来“模仿”IOS行为。尝试使用另一个键盘,看看是否有帮助。 – icazevedo