以号码归属地查询为例,输入号码的时候要求监听输入过程中,文本的变化,号码归属地也会随之变化
逻辑代码
package com.ldw.safe.Activity;
import android.app.Activity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
import com.ldw.safe.R;
import com.ldw.safe.db.dao.AddressDao;
/*
* 归属地穿页面
*/
public class AddressActivity extends Activity {
private EditText etNumber;
private TextView tvResult;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_address);
etNumber = (EditText) findViewById(R.id.et_number);
tvResult = (TextView) findViewById(R.id.tv_result);
//监听EditText的实时变化,输入数字,edit会发生变化
etNumber.addTextChangedListener(new TextWatcher(){
//发生变化前的回调函数
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
//发生变化的回调函数
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
//监听文本的实时变化
String address = AddressDao.getAddress(s.toString());
tvResult.setText(address);
}
//发生变化以后的回调函数
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
}
/*
* 开始查询
*/
public void query(View v){
String number = etNumber.getText().toString().trim();
if(!TextUtils.isEmpty(number)){
String address = AddressDao.getAddress(number);
tvResult.setText(address);
}
}
}