当人们输入电话号码时,我想在editText字段中添加“ +”。但是我似乎无法在此代码中添加“ +”。
EditText editText = (EditText) findViewById(R.id.register_edit_phone);
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable text) {
// TODO Auto-generated method stub
if (text.length() == 0) {
text.append('+');
}
}
});
我应该进行哪些更改才能使其正常工作?
答案 0 :(得分:0)
下面的代码将在EditText
的开头添加常量+。哪个用户无法清除。
final EditText editText = findViewById(R.id.editText);
final String prefix = "+";
editText.setText(prefix);
Selection.setSelection(editText.getText(), editText.getText().length());
editText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
if (!s.toString().startsWith(prefix)) {
editText.setText(prefix);
Selection.setSelection(editText.getText(), editText.getText().length());
}
}
});
答案 1 :(得分:0)
onTextChanged放在下面的代码中
edittext.setText(“+”.concat(ediitext.getText());