【发布时间】:2014-05-11 22:07:47
【问题描述】:
这是我控制用户出生年份输入的文本观察器。如果用户输入小于 1900 我想用 1900 替换它。应用程序正常工作。我可以输入一个值到TextView。但是当开始输入时以“1”开头,然后在我无法再次编辑TextView 后立即替换为“1900”。键盘上的删除按钮不会删除输入的值。
@Override
public void afterTextChanged(Editable s) {
try {
int birth = Integer.parseInt(s.toString());
if (birth < 1900) {
s.replace(0, s.length(), "1900");
}
} catch (NumberFormatException e) {
}
}
<EditText
android:id="@+id/editText1"
android:hint="Birth Year"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="numberSigned">
</EditText>
【问题讨论】:
标签: android textview textwatcher