嗨,我想知道是否有可能在 flutter 中以编程方式打开键盘以及立即准备好光标和文本字段类型。
我已经知道如何拉起键盘FocusScope.of(context).requestFocus(FocusNode());但我还需要知道如何让文本字段准备好输入,而无需用户点击文本字段。

假设我有一个文本字段:

TextField(
  controller: textEditingController,
);
我想使用代码实现下面的效果,以便用户不必点击文本字段
textEditingController.openTextField()//Pseudo code
: 编辑 - - - - - - - - - - - - - - - - - -
我有点坏,但我忘了在文本字段上添加焦点节点作为参数
在您的类(class)中添加

然后添加到文本字段
TextField(
  ...
  focusNode:_focusNode,
  ...
);
然后通过运行调用它
_focusNode.requestFocus();

最佳答案

首先,您需要定义 FocusNode 变量并将其分配给您的 TextField 像这样:

//in header class
FocusNode focusNode  = FocusNode ();

//in build method
TextField(focusNode: focusNode,)
然后使用此代码:
FocusScope.of(context).requestFocus(focusNode);

关于flutter - 如何以编程方式打开键盘文本字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62895305/

10-09 03:23