我想做TextField
,用户可以点击任何一行,并从那里开始写作。所以我有一个想法,只是做一个新的笔记,只是已经有这些"\n"
在任何行的开始,但现在我不知道如何设置自动对焦在第一行。
photo of my note where autofocus focus on last sign
class NewNoteBodyState extends State<NewNoteBody> {
final myController = TextEditingController();
// late FocusNode myFocusNode;
@override
void initState() {
super.initState();
widget.controller.text = widget.controller.text;
widget.controller.text = "\n\n\n\n\n\n\n\n\n\n\n\n\n\n";
// myFocusNode = FocusNode();
}
// @override
// void dispose() {
// super.dispose();
// myFocusNode.dispose();
// }
@override
Widget build(BuildContext context) {
return Padding(
padding: const EdgeInsets.symmetric(vertical: 0, horizontal: 10),
child: TextField(
expands: true,
// focusNode: myFocusNode,
autofocus: true,
controller: widget.controller,
maxLines: null,
decoration: const InputDecoration(
border: InputBorder.none,
),
),
);
}
}
字符串
我看了TextField
的属性,并尝试了focusNode
的一些东西,但我不明白。
1条答案
按热度按时间5uzkadbs1#
您可以通过在文本中设置
selection
到0
的位置来实现这一点,如下所示:字符串
这将把光标放在初始文本的开头。