美文网首页
Android EditText @人名

Android EditText @人名

作者: 北漂攻城狮的泪 | 来源:发表于2016-09-08 17:02 被阅读0次

今天产品要求实现@人名功能,该死的没写过,百度了半天也没有介绍的没办法只能自己写了。

首先第一步就是生成@人名格式:

String text ="@"+ senderName +"  ";

当@人名生成之后,EditText的光标应该位于@人名的后面,此时引用EditText的一个属性:

setSelection()====>设置光标出现的位置

EditText中有一个方法addTextChangedListener,应用该方法目的就是为了当删除@人名的时候讲EditText设置为空

edit_context.addTextChangedListener(new TextWatcher() {

@Override

//在EditText内容改变之前

public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {

}

@Override

//在EditText内容改变时

public void onTextChanged(CharSequence charSequence, int i, inti 1, int i2) {

}

@Override

//在EditText内容改变之后

public voidafterTextChanged(Editable editable) {

String s = editable.toString();

//判断是否@人名

inti = s.indexOf("@");

//i==-1表示,没有@人名

if(i != -1)

if(!s.equals(""))

//判断当前edittext内容的长度是否小于@人名的长度,如果小于@人名长度此时正在执行删除则将edittext设置为0

if(s.length()

edit_context.setText("");

}

}

});

相关文章

网友评论

      本文标题:Android EditText @人名

      本文链接:https://www.haomeiwen.com/subject/ifijettx.html