美文网首页
flutter 自定义删除键

flutter 自定义删除键

作者: hi李昊天 | 来源:发表于2019-10-25 15:25 被阅读0次

需求是这样的,在没有弹出键盘的时候,可以删除文本框里面光标所在位置之前的文字;

开始实现 很简单

 void deleteText() {
    var value = _textController.value;
    var selection = value.selection;
    var text = value.text;

    String newText = '';
    if (selection.baseOffset != selection.extentOffset) {
      newText = selection.textBefore(text) + selection.textAfter(text);
      _textController.value = TextEditingValue(
          text: newText,
          selection: selection.copyWith(
              baseOffset: selection.baseOffset,
              extentOffset: selection.baseOffset));
    } else {
      newText = text.substring(0, selection.baseOffset - 1) +
          selection.textAfter(text);
      _textController.value = TextEditingValue(
          text: newText,
          selection: selection.copyWith(
              baseOffset: selection.baseOffset - 1,
              extentOffset: selection.baseOffset - 1));
    }
  }

相关文章

网友评论

      本文标题:flutter 自定义删除键

      本文链接:https://www.haomeiwen.com/subject/bowsvctx.html