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),
        );
      });
    });
  }
相关推荐
lili-felicity12 小时前
进阶实战 Flutter for OpenHarmony:url_launcher 第三方库实战
flutter
早點睡39013 小时前
基础入门 Flutter for OpenHarmony:flutter_slidable 列表滑动操作实战
flutter
恋猫de小郭16 小时前
Flutter 设计包解耦新进展,material_ui 和 cupertino_ui 发布预告
android·前端·flutter
lili-felicity18 小时前
进阶实战 Flutter for OpenHarmony:InteractiveViewer 组件实战 - 图片手势缩放查看系统
flutter
lili-felicity18 小时前
进阶实战 Flutter for OpenHarmony:path_provider 第三方库实战 - 文件存储管理系统
flutter
lili-felicity18 小时前
进阶实战 Flutter for OpenHarmony:flutter_contacts 第三方库实战 - 智能通讯录管理系统
flutter
松叶似针21 小时前
Flutter三方库适配OpenHarmony【secure_application】— 五平台隐私保护机制横向对比
flutter·harmonyos
空白诗21 小时前
基础入门 Flutter for OpenHarmony:Opacity 透明度组件详解
flutter
lili-felicity21 小时前
进阶实战 Flutter for OpenHarmony:animations 第三方库实战 - 流畅过渡动画系统
flutter