EditText в Google Android - PullRequest
       2

EditText в Google Android

0 голосов
/ 01 июля 2011

Я хочу создать EditText , который позволяет Числовые значения , Запятая и Удалить , а другие значения игнорируются.

Итак, как мне добиться этого с помощью программного кода?

Спасибо.

Ответы [ 3 ]

2 голосов
/ 04 июля 2011

Я добился того же, используя следующий код, надеюсь, вы также найдете в нем помощь.

editText.addTextChangedListener(controller);


@Override
public void afterTextChanged(Editable s) {
    if(s.trim.length() > 0)
            {
                 int start = s.toString().length() - 1;
                 int a = (int) s.charAt(start);
                 if (!(a >= 48 && a <= 57 || a == 44))
                    s = s.delete(start, start + 1);
            }
}

@Override
public void beforeTextChanged(CharSequence s, int start, int count,
        int after) {
}

@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
0 голосов
/ 04 июля 2011

просто,

вы хотите создать текстовое поле, подобное тому, что вы можете ввести новую строку, должна иметь некоторую грамматику, которую вы хотите разрешить.

У меня есть грамматика проверки электронной почты, которая может вам помочь.

string = "/ алфавит / число / спецсимвол";

и еще один

user-input-string = "";

просто сравните лексемы, введенные пользователем, и вы определили грамматику.

0 голосов
/ 01 июля 2011

Чтобы ограничить символы, которые можно вводить в текстовом редакторе Android, вы должны установить их в атрибуте XML android: digits. См. http://developer.android.com/reference/android/widget/TextView.html#attr_android:digits. Не забудьте также проверить вводимые пользователем данные, прежде чем поместить их в хранилище.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...