gpt4 book ai didi

flutter - 对于TextField小部件中的长文本,如何在未聚焦后从头开始显示文本?

转载 作者:行者123 更新时间:2023-12-03 04:39:59 27 4
gpt4 key购买 nike

Email TextField
上图是TextField。我的电子邮件地址是“dinesh12345678901@gmail.com”。散焦之后,我需要从头开始显示电子邮件,如下图所示。无论如何,在 flutter 中轻松实现这一目标?
例如:推荐gmail应用。
enter image description here

最佳答案

当您不关注selection时,可以在TextEditingController上设置TextField。这是一个例子:

import 'package:flutter/material.dart';

class TestScreen extends StatefulWidget {
@override
_TestScreenState createState() => _TestScreenState();
}

class _TestScreenState extends State<TestScreen> {
TextEditingController _textEditingController = TextEditingController();
FocusNode _focusNode = FocusNode();

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

@override
Widget build(BuildContext context) {
return Scaffold(
body: SafeArea(
child: Padding(
padding: const EdgeInsets.symmetric(horizontal: 48),
child: Column(
children: <Widget>[
Container(height: 16),
TextField(
controller: _textEditingController,
focusNode: _focusNode,
),
SizedBox(height: 36),
FlatButton(
onPressed: () async {
_textEditingController.selection =
TextSelection.fromPosition(TextPosition(offset: 0));
await Future.delayed(Duration(milliseconds: 100));
_focusNode.unfocus();
},
color: Colors.red,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(12),
),
textColor: Colors.white,
child: Text('Unfocus'),
),
],
crossAxisAlignment: CrossAxisAlignment.stretch,
),
),
),
);
}
}
enter image description here

关于flutter - 对于TextField小部件中的长文本,如何在未聚焦后从头开始显示文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63413385/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com