use*_*266 6 android android-edittext
嗨,我只想知道是否可以禁止用户输入的第一个数字为"0".
<EditText
android:id="@+id/editText1"
android:layout_width="50dp"
android:layout_height="35dp"
android:layout_marginBottom="2dp"
android:maxLength="2"
android:inputType="number"
android:digits="123456789">
<requestFocus />
</EditText>
Run Code Online (Sandbox Code Playgroud)
但是,使用此代码可以防止用户输入"0",但我只希望第一个数字不是"0"
Bad*_*rul 13
如果你想避免用户只在开头输入0,那么试试这个:
editText1.addTextChangedListener(new TextWatcher(){
public void onTextChanged(CharSequence s, int start, int before, int count)
{
if (editText1.getText().toString().matches("^0") )
{
// Not allowed
Toast.makeText(context, "not allowed", Toast.LENGTH_LONG).show();
editText1.setText("");
}
}
@Override
public void afterTextChanged(Editable arg0) { }
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
});
Run Code Online (Sandbox Code Playgroud)