EditText с невыбираемым префиксом, выделенным серым цветом - PullRequest
3 голосов
/ 29 марта 2011

Я ищу способ сделать серый текст в качестве префикса в EditText.Этот текст не должен быть выделен.Это немного похоже на поле Кому, когда вы пишете сообщение в Gmail.Единственное (визуальное) отличие состоит в том, что этот текст исчезает, когда вы начинаете печатать.

Есть ли способ добиться этого в Android?

Спасибо!

Ответы [ 2 ]

4 голосов
/ 29 марта 2011

Вы можете использовать изображение части "EUR 2500".это вы можете отобразить в вашем окне редактирования, не затрагивая остальную часть.Следуйте коду:

Drawable editTextDrawable = context.getResources().getDrawable(imageId);
    editTextDrawable.setBounds(0, 0, editTextDrawable.getIntrinsicWidth(),
            editTextDrawable.getIntrinsicHeight());

В тексте редактирования можно использовать рисование следующим образом:

editTxtItemName.setCompoundDrawables(,
            ListViewConstants.editTextDrawable, null, null, null);
0 голосов
/ 29 марта 2011

В качестве окончательного решения вы можете переписать полный класс EditText, расширив его и изменив его таким образом, чтобы он имел собственный заданный вами фон и заданный вами предопределенный отступ.

Поместите EUR в качестве фона, расположив его слева, а затем задайте начальный отступ EditText таким образом, чтобы текст, который вводит пользователь, начинался сразу после текста EUR.

Это может быть расценено как излишнее или плохое решение этой проблемы, но все же ее окончательный вариант. Возможно, не самый умный, и я также не знаю, сработает ли он наверняка: P

Всего наилучшего!

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