我从用户处使用EditText获得输入,但我不希望输入超过30,这是他的输入应在1-30范围内,我应该怎么做?
final EditText personcount = findViewById(R.id.personcount);
final TextView personcountview = findViewById(R.id.personcountview);
final TextView itemcountview = findViewById(R.id.itemcountview);
final EditText itemcount = findViewById(R.id.itemcount);
personcount.setFilters(new InputFilter[]{new InputFilter.LengthFilter(1)});
itemcount.setFilters(new InputFilter[]{new InputFilter.LengthFilter(1)});
Toast.makeText(this, "EditText limit set to a single digit", Toast.LENGTH_SHORT).show();
Button next1 = findViewById(R.id.next1);
next1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int num1= Integer.parseInt(personcount.getText().toString());
int num2 = Integer.parseInt(itemcount.getText().toString());
Intent personname = new Intent(getApplicationContext(), personname.class);
personname.putExtra("num", num1);
personname.putExtra("num2",num2);
startActivity(personname);
}
您可以在xml的editText中设置maxLength
:
android:maxLength="30"
或设置过滤器:
TextView edit= new TextView(...);
InputFilter[] filterArray = new InputFilter[1];
filterArray[0] = new InputFilter.LengthFilter(30);
edit.setFilters(filterArray);