当前位置: 首页 > 面试题库 >

如何在不触发Text Watcher的情况下更改EditText文本?

卜阳
2023-03-14
问题内容

我有一个EditText带有客户文本监视程序的字段。在一段代码中,我需要更改使用的EditText中的值.setText("whatever")

问题是,一旦我进行更改,afterTextChanged就会调用该方法,从而创建了无限循环。如何在不触发afterTextChanged的情况下更改文本?

我需要afterTextChanged方法中的文本,因此不建议删除TextWatcher


问题答案:

您可以注销观察者,然后重新注册。

另外,您可以设置一个标志,以便观察者知道自己刚刚更改文本的时间(因此应忽略它)。



 类似资料:
  • 我有一个字段,上面有一个客户文本观察者。在一段代码中,我需要更改EditText中的值,我使用<code>.setText(“whather”)来执行此操作。 问题是,只要我做了更改,就会调用<code>afterextchanged 我需要 afterTextChanged 方法中的文本,因此不建议删除 。

  • 问题内容: 我想在字体为时使用光标。 那可能吗? 问题答案: 您可以定制一个。

  • 我有一堆CSV文件,它们是作为数据流读取的。对于每个dataframe,我希望更改一些列名,如果某个dataframe中存在特定列: column_name_update_map={'aa':'xx';'bb':'yy'}

  • 尝试以60FPS的速度在屏幕上设置一个具有绝对位置的元素的动画,我注意到大多数CPU时间都由使用。 我可以在不触发重新计算样式的情况下更改 属性吗? 目前我像这样更改位置:; 下面是一个演示:http://jsfiddle.net/pLtvxv41/您可以使用GoogleChrome性能开发工具查看重新计算样式函数的用法。 这能以更有效的方式改变吗?

  • 我有一个动作执行,其中一个if/fe是如果用户按“A”键,它会将文本设置为不同的内容。程序不是在按“A”后设置文本,而是跳过设置文本并向下移动到下面的if语句。我的问题是,如何让我的程序在我的if语句之前设置文本?我的代码在下面,谢谢!

  • 问题内容: 我在我的网站上设置了一个滑动面板。 完成动画制作后,我像这样设置哈希 (这是一个回调,并且在前面已分配)。 这很好用,可以使用户在面板上添加书签,也可以使非JavaScript版本正常工作。 但是,当我更新哈希时,浏览器跳到该位置。我想这是预期的行为。 我的问题是:如何预防这种情况?即如何更改窗口的哈希值,但是如果哈希值存在,浏览器 不能 滚动到该元素?某种东西吗? 我正在使用jQue