在很多程序的搜索框或查询框中,会有随着我们输入的改变而自动改变结果的效果。
主要用到的是文本监听器这一个东西。代码如下:
etNumber = (EditText) findViewById(R.id.et_number);
tvResult = (TextView) findViewById(R.id.tv_result);
// 监听EditText的变化
etNumber.addTextChangedListener(new TextWatcher() {
// 文字 发生变化时的回调
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
String address = AddressDao.getAddress(s.toString());
tvResult.setText(address);
}
// 文字变化前的回调
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
// 文字变化结束之后的回调
@Override
public void afterTextChanged(Editable s) {
}
});
}
步骤主要是:1.findViewById我们的文本框
2.在文本框设一个TestChangedListener
3.在onTextChanged方法中加入我们的搜索逻辑(一般都用这个方法,其他两个方法很少用)