flutter TextField 控制焦点位置

背景

使用Visibility来控制清理按钮的显示和隐藏,在设置Visibility的状态时,会导致TextField焦点丢失。使用AnimatedOpacity代替Visibility

在光标丢失后手动设置光标位置

dart 复制代码
void _setFocus({int? baseOffset}) {
    final int currentPosition =
        baseOffset ?? textController.selection.baseOffset;
    Future.delayed(Duration(milliseconds: 100), () {
      // Move focus to the end of the current text
      focusNode.requestFocus();
      Future.delayed(Duration(milliseconds: 100), () {
        // Save the current cursor position
        textController.selection = TextSelection.fromPosition(
          TextPosition(offset: currentPosition),
        );
      });
    });
  }
相关推荐
好的佩奇15 小时前
Dart 之扩展方法
android·flutter·dart
好的佩奇17 小时前
蓝牙之经典蓝牙
android·flutter·蓝牙
传奇开心果编程20 小时前
【Flutter踩坑排雷】第19课:路由硬编码坑|字符串路由书写错误,页面跳转失败排查
android·flutter·ios·移动开发·跨平台·ui框架·声明式ui
Nerd(BUG版)2 天前
Flutter学习day5--事件手势与命中测试
学习·flutter
传奇开心果2 天前
【Flutter踩坑排雷】第5课:扩展方法冲突坑|同名扩展引发编译歧义,故障规避手段
android·flutter
雪铃儿3 天前
Flutter 双端热更新新方案:基于 Dart 官方动态模块的 flutter_patcher 1.0.0
flutter·hotfix
好的佩奇3 天前
Dart 之方法、操作符与可调用对象
android·flutter·dart
恋猫de小郭3 天前
Flutter Impeller Vulkan 内存持续上涨,问题没想到是文字阴影
android·前端·flutter
传奇开心果4 天前
【Flutter踩坑排雷】第3课:const 误用坑|const 错误使用引发 UI 异常与性能损耗
android·flutter