您的位置:首页 > 移动开发 > Android开发

EditText的妙用

2016-06-26 12:37 267 查看
首先给大家推荐一个博客,里面对EditText的属性和一些设置进行了详细的统计。Android开发之EditText属性详解(感谢博主分享)

1.EditText背景设置

为了使应用美观起来,我们在开发的时候通常不直接使用android系统默认的EditText风格,想改变这种风格只需要给EditText设置一个背景就可以了。如果你想用Shape自己做一个背景呢,可以看下:详解shape标签 (感谢博主分享)

2.监听EditText的输入内容的变化



edt_AddComment_Pop_LRDA.addTextChangedListener(this);


实现这个接口即可,接口中有三个方法:

addTextChangedListener接口中的方法
beforeTextChanged这个方法在EditText输入之前调用
onTextChanged这个方法在EditText输入内容的时候调用
afterTextChanged这个方法在EditText完成输入内容的时候调用
//输入前
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {

}
//输入时
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//获取去掉空格后的输入的字符串
String comment=edt_AddComment_Pop_LRDA.getText().toString().trim();
//如果字符串为空
if(comment.equals("")||comment.length()==0){
//改变发送按钮的背景和颜色     tv_SendComment_Pop_LRDA.setTextColor(getResources().getColor(R.color.line_color));
tv_SendComment_Pop_LRDA.setBackgroundResource(R.mipmap.ic_qiandanedbg);
}else {
//改变发送按钮的背景和颜色   tv_SendComment_Pop_LRDA.setTextColor(getResources().getColor(R.color.white));
tv_SendComment_Pop_LRDA.setBackgroundResource(R.mipmap.ic_qiandanbg);
}
}
//输入后
@Override
public void afterTextChanged(Editable s) {

}


这里实现了QQ空间发表评论时的效果,不输入或者输入空格时发送的背景和颜色是灰色,如果有内容输入且不是空格时就会变色。

一边输入一边输出的效果也是这样实现的,再输入的过程中同时给TextView.setText()即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息