这是我在应用程序中编辑文本之一
<EditText
android:id="@+id/etFolder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="/pictures"
android:ems="10" >
第一次出现时带有“/图片”
用户可以更改文本并输入另一个单词。但如何防止删除编辑文本的“/”。
用户可以删除所有其他文本,但不允许删除第一个字符。
我怎样才能实现这种行为?
有几种方法可以实现这一目标。首先,您可以简单地拥有它,这样如果EditText
块为空时,立即用“/”字符重新填充。或者,如果之前的char
is /
,然后阻止用户删除回来。下面的代码未经测试,因此您可能需要稍微调整一下。
editText = (EditText) findViewById(R.id.editText);
editText.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (editText.getText().charAt(editText.length()-1) == '/') {
editText.append(" ");
}
//OR...
if (editText.length() == 0) {
editText.setText("/")
}
}
@Override
public void afterTextChanged(Editable s) {
}
});
Edit:FWIW,如果我处于您的位置,我个人会选择像 Gabriella 和 apk 相结合的解决方案。不过,由于你的问题很具体,我尝试直接回答。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)