Tôi đang phát triển ứng dụng android .. thực sự tôi cần đặt giá trị tối thiểu và tối đa cho mục nhập editext giá trị tối thiểu của tôi là 18 và tối đa là 65. Tôi đã thực hiện mã chính xácandroid edittext minmum và giá trị tối đa
package com.test;
import android.text.InputFilter;
import android.text.Spanned;
public class InputFilterMinMax implements InputFilter {
private int min, max;
public InputFilterMinMax(int min, int max) {
this.min = min;
this.max = max;
}
public InputFilterMinMax(String min, String max) {
this.min = Integer.parseInt(min);
this.max = Integer.parseInt(max);
}
@Override
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
try {
int input = Integer.parseInt(dest.toString() + source.toString());
if (isInRange(min, max, input))
return null;
} catch (NumberFormatException nfe) { }
return "";
}
private boolean isInRange(int a, int b, int c) {
return b > a ? c >= a && c <= b : c >= b && c <= a;
}
}
EditText et = (EditText) findViewById(R.id.myEditText);
et.setFilters(new InputFilter[]{ new InputFilterMinMax("1", "12")});
tôi có mã này fro trang web này chỉ ... Is there a way to define a min and max value for EditText in Android? thực này cho các giá trị từ 1 đến 12 và cho giá trị mà nó đang làm việc tốt nhưng khi tôi thay đổi giá trị của tôi 18 và 45 nó không phải là làm việc ... bất cứ ai có thể vui lòng giúp tôi .. những gì thay đổi tôi phải được thực hiện cho việc này ...
thử đăng nhập các giá trị hoặc thử debugger mmode. –
bạn đã thử trả lời từ itsrajesh4uguys trong liên kết bạn đã đưa ra ... giải pháp đó tốt và làm việc cho tôi ... –
cảm ơn jeet vì đã bình luận ... hãy để tôi thử .. – user2223317