首页 > 解决方案 > 如何防止用户更改设置的 TextEditingController 文本?

问题描述

我已经在我的代码中设置了一个 TextEditingController,我想找到一种方法来阻止用户更改我的代码已经输入到小部件中的给定文本。

我创建了一个 TextEditingController() 并将文本设置为我想要的(我不希望用户更改,而是在之后添加)。

_controller = new TextEditingController();

_controller.text = "示例:";

如上所述设置后我仍然可以退格文本,那么是否可以确保用户不能退格控制器文本?

标签: flutter

解决方案


也许,你可以做这样的事情。如果您使用退格或剪切之类的东西,这将恢复您的文本。

TextField(
  controller: textEditingController,
  onChanged: (text){
    if(text.length < textEditingController.text.length){
      textEditingController.text = textEditingController.text;
    }
  },
),

推荐阅读