Как ограничить время ввода текста для редактирования в Android

Я должен позволить пользователю вводить только время в формате ##: ## в редактируемом тексте на лету, есть ли способ добиться этого? Я использовал приведенный ниже код, но он не работает.

Я могу ввести число больше 24, например 45623: 5689.

edit.setInputType(InputType.TYPE_DATETIME_VARIATION_TIME)

Четноеandroid:text="time" тоже не работает.

Как я могу достичь этой вещи. Кто-нибудь может подсказать мне, как я могу сделать это.

Я хочу разрешить пользователю вводить в первых 2 местах до 23 значений, а затем в расчетные: и тогда пользователь может разрешить до 59 значений.

например

23:59 correct
24:05 incorrect
02:56 correct
02:79 incorrect

Я использовал этот фильтр, но он не работает

Я получил этот код где-то еще в SO.

Код:

    InputFilter timeFilter = new InputFilter() {
        public CharSequence filter(CharSequence source, int start, int end, Spanned dest,
                int dstart, int dend) {
            if (source.length() == 0) {
                return null;// deleting, keep original editing
            }
            String result = "";
            result += dest.toString().substring(0, dstart);
            result += source.toString().substring(start, end);
            result += dest.toString().substring(dend, dest.length());

            if (result.length() > 5) {
                return "";// do not allow this edit
            }
            boolean allowEdit = true;
            char c;
            if (result.length() > 0) {
                c = result.charAt(0);
                allowEdit &= (c >= '0' && c  1) {
                c = result.charAt(1);
                allowEdit &= (c >= '0' && c  2) {
                c = result.charAt(2);
                allowEdit &= (c == ':');
            }
            if (result.length() > 3) {
                c = result.charAt(3);
                allowEdit &= (c >= '0' && c  4) {
                c = result.charAt(4);
                allowEdit &= (c >= '0' && c 

Ответы на вопрос(5)

Ваш ответ на вопрос