как заменить эмодзи на программной клавиатуре Android

Чтобы отобразить кнопку смайликов на программной клавиатуре, я использую это в EditText:

android:inputType="textShortMessage"

который использует значки смайликов для моего устройства (что может быть связано с моей моделью оператора/телефона).

Вместо этого я хочу использовать свой собственный набор рисунков. Есть ли способ сделать это без создания совершенно новой программной клавиатуры?


person droideckar    schedule 06.12.2014    source источник
comment
Вау, я просматривал множество библиотек эмодзи, думая, что в Android не было стандартной клавиатуры эмодзи. Событие, это не ответ, ты спас меня, как 2 дня работы   -  person xleon    schedule 08.10.2015


Ответы (2)


Нет, однострочного решения нет, возможно, оно есть в Lollipop, так как оно поставляется со смайликами.

Опции:

  • Реализовать клавиатуру (требуется много усилий + пользователь должен изменить свою клавиатуру по умолчанию)
  • Реализуйте панель/диалоговое окно, которое действует как клавиатура (требует меньше усилий)
  • Используйте существующую библиотеку, чтобы сделать список библиотек здесь, но вы можете поискать еще, если хотите!
person madlymad    schedule 06.12.2014
comment
попробовал смайлик, все еще видит ?? в EmojiconTextView. Я попробую другие библиотеки дальше. Спасибо за вашу помощь! - person droideckar; 07.12.2014

Мне удалось решить эту проблему с помощью EmojiHandler из здесь:

Чтобы получить юникод эмодзи из текстового содержимого сообщения:

String s = EmojiHandler.decodeJava(content);
// use decoded string to display emoji in TextView, Button, etc                     
textButton.setText(s);

Чтобы закодировать смайлик с программной клавиатуры и поместить его в строку:

String encodedEmoji = EmojiHandler.encodeJava(msgText);
person droideckar    schedule 12.01.2015