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),
        );
      });
    });
  }
相关推荐
马拉萨的春天3 小时前
block的样式有哪些?如果copy的话分别会有啥样式
flutter·性能优化·ios的block
Rattenking4 小时前
【CSS】---- 图形函数详解
笔记·学习·flutter
程序员老刘4 小时前
别再抱怨Flutter方案太多了,这个就叫生态!
flutter·客户端
黄毛火烧雪下6 小时前
(一)Flutter 插件项目demo预览图
flutter
站在远方望童年8 小时前
WSL2 中的 Flutter 开发环境配置
flutter
w_y_fan9 小时前
flutter_native_splash: ^2.4.7
android·前端·flutter
QuantumLeap丶9 小时前
《Flutter全栈开发实战指南:从零到高级》- 06 -常用布局组件
flutter·dart
大雷神1 天前
【成长纪实】Flutter中Dart 与Harmony中 ArkTS 异步编程对比:从 Future 到 Promise
flutter·harmonyos
QuantumLeap丶1 天前
《Flutter全栈开发实战指南:从零到高级》- 05 - 基础组件实战:构建登录界面
flutter·ios
黄毛火烧雪下1 天前
(四)Flutter插件之IOS插件开发
flutter·ios