gpt4 book ai didi

android - TextWatchers、OnClickListeners 等

转载 作者:行者123 更新时间:2023-11-29 21:00:24 24 4
gpt4 key购买 nike

只是想知道在使用 TextWatchers、OnClickListeners 等方面是否有关于如何将它们放入代码中的最佳实践。

你会做以下事情吗:

textBox.addTextChangedListener(new TextWatcher()
{
public void afterTextChanged(Editable s)
{
// some code here
}

public void beforeTextChanged(CharSequence s, int start, int count, int after)
{
// and/or here
}

public void onTextChanged(CharSequence s, int start, int before, int count)
{
// and/or even here
}
});

或者最好将 TextWatcher 等作为变量并像这样调用它:

textBox.addTextChangedListener(myTextWatcher);

我知道第二种在可重用性方面会好得多,但我很好奇是否只有一个实例,在这个例子中,TextWatcher。

最佳答案

我认为还有另一种选择是在您的主类上实现接口(interface),然后有类似这样的东西:

textBox.addTextChangedListener(myTextWatcher);

总共有 3 个选项,我使用了其中的 3 个。

如果 TextWatcheronClickListener 需要一些配置(例如 id 或行号)并多次使用,我创建自己的类并执行类似这个:

textBox1.addTextChangedListener(new MyTextWatcher(1, "Some Text"));
textBox2.addTextChangedListener(new MyTextWatcher(2, "Some Other Text"));
textBox3.addTextChangedListener(new MyTextWatcher(3, "Some Text 4"));

除此之外,如果它是一次性的而且很小,我会这样做:

mButton.setOnClickListener(new OnClickListener() {
....
});

我也用ButterKnife很多。据我所知,它没有 TextWatchers 的任何注释,但它有 onClickListeneronItemClickListeneronItemLongClickListener 等. 并且您可以使用注释将一个函数用于多个 Views

关于android - TextWatchers、OnClickListeners 等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26299291/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com