xde*_*vco 18 textfield flutter
我有一个 Flutter 应用程序,它在所有方面都正常运行,除非我选择了 TextField(或 TextFormField)。当我选择 TextField 时,光标在 TextField 中闪烁,但我无法键入任何内容,并且 AppBar 中的所有其他按钮(如 floatingActionButton 和后退按钮)停止工作。从本质上讲,该应用程序似乎已冻结,但我没有收到任何错误消息。
在包含 FocusNodes 和 TextEditingControllers 的两个不同页面中多次尝试解决该问题后,我通过直接从 Flutter 的网站合并一个带有代码的新页面返回到第一个,但是这个准系统代码中的 TextField 仍然锁定了应用程序。
import 'package:flutter/material.dart';
class EventDetailForm extends StatefulWidget {
static const String routeName = "/events/event-detail-form";
@override
_EventDetailFormState createState() => _EventDetailFormState();
}
class _EventDetailFormState extends State<EventDetailForm> {
final myController = TextEditingController();
@override
void dispose() {
myController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: Text('Event Detail')),
body: Padding(
padding: const EdgeInsets.all(16),
child: TextField(
controller: myController,
)),
floatingActionButton: FloatingActionButton(
onPressed: () {
return showDialog(
context: context,
builder: (context) {
return AlertDialog(
content: Text(myController.text),
);
});
},
child: Icon(Icons.text_fields),
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,我没有收到任何错误消息。光标在 TextField 中闪烁,其他一切都失去功能,我必须退出并重新启动。我不确定我还应该考虑什么。有没有人对可能导致这种情况的原因有任何想法?
我遇到了同样的错误,通过切换到 Flutter 的 beta 通道解决了。在你的终端使用
flutter channel beta
flutter upgrade
Run Code Online (Sandbox Code Playgroud)
关于频道,您可以在这里阅读https://github.com/flutter/flutter/wiki/Flutter-build-release-channels
| 归档时间: |
|
| 查看次数: |
4299 次 |
| 最近记录: |