我正在尝试使用TextWatcher界面,以检测哪个EditText被更改了。我有一个使用10个EditTexts的活动,为每个文本使用10个TextWatchers看起来很奇怪。
有没有办法只使用一个TextWatcher,并在函数afterTextChanged中的可编辑项上使用switch语句?
我以前从未尝试过这种方法,但如果检查编辑文本
是否处于焦点,它应该会起作用。有几种方法可以做到这一点,最简单的方法是检查<code>TextWatcher
if(mEdit1.hasFocus()) {
...
} else if(mEdit2.hasFocus()) {
...
} else if(mEdit3.hasFocus()) {
...
}
另一种方法是在根视图上使用 OnGlobalFocusChangeListener,并设置一个变量,指示 EditText
当前具有焦点。它仍然需要大量的if
语句来检查哪个EditText
具有焦点,但可能是一个更易于重用的解决方案。
我要做的是创建一个扩展<code>EditText。然后,您可以在XML中实现这些编辑文本,或者在Java中使用<code>TextWatcher。
不知道这对你是否有用,但你可以试一试。
问题内容: 我希望在整个应用程序生命周期中只有一个类的5个实例。我该如何实现?如果可能,请提供示例代码。 问题答案: 由于Singleton应该由枚举组成(请参见“有效Java”): 格蕾兹·加德
问题内容: 我不断收到错误: “路由器”可能只有一个子元素 使用react-router时。 我似乎无法弄清楚为什么它不起作用,因为它与示例中显示的代码完全一样:快速入门 这是我的代码: 感谢您的帮助 问题答案: 您必须将您的换行到(或)中。 应该 jsfiddle / webpackbin
< code >类 这是一个函数 < code>void f(类 是否可以只传递< code>SomeObject.class而不是编译时错误?
每当“q”被写为我附加TextWatcher的edittext的最后一个字符时,这个“q”就会被替换为“a”。我使用: 但是,当我测试代码时,当我输入“q”时,什么也没发生。一些帮助?非常感谢。
我有一个java应用程序,它在运行时会产生另一个JVM。然而,我想使用jpack打包我的应用程序,它运行得很好。但是在运行时,当我的应用程序尝试使用调用下一个JVM时 我必须知道,应用程序是使用定制的JVM启动的,并且没有像“java”这样的命令。所以我得到的错误是这个java。无法执行getAbsolutePath()。 如果没有java可执行文件,我的应用程序如何在单独的进程中运行另一个jar
请不要使用“if”语句,除非你在解释为什么没有“if”语句是不可能的。