Anzeigen Benutzerdefinierter Smiley in Android Tastatur
Ich habe versucht, für die letzten 3 Tage zeigen eine grafische benutzerdefinierte Emoticons in der Standard-android-Nachricht anzeigen. Ich habe erfolgreich gezeigt, meine benutzerdefinierte emoticons anstelle von Tasten. Das problem ist jetzt, dass ich versuche zu zeigen, ein drawable in spanable string-builder. Aber die drawable nur nicht angezeigt auf der Tastatur. Hier ist der code bisher:
SpannableString ss = new SpannableString(" ");
Drawable d = getResources().getDrawable(R.drawable.a);
d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
// ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
ImageSpan span = new ImageSpan(d);
// ss.setSpan(span, 0, 1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
mComposing.append(":");
mComposing.setSpan(new ImageSpan(d), 0,1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
getCurrentInputConnection().commitText(mComposing, 1);
Ich habe versucht, verschiedene Methoden, um irgendwie passte das drawable, aber es will einfach nicht zeigen, auf die Standard-message-Ansicht von android. Jegliche Hilfe würde sehr geschätzt werden.
- Hey SoH, Hast du eine Lösung für dein Problem? Ich habe auch gleiche Problem wenn ich gehe zu Bild hinzufügen, um Android-Messaging-app. Wenn Sie eine Antwort haben, poste es bitte als Antwort zu diesem thread. Danke..
- Ich mache etwas ähnliches HIER!!! stackoverflow.com/questions/16768930/...
- Könnten Sie näher erläutern, was du damit meinst "die Standard-message-Ansicht von android?" Welche Klasse ist das nicht korrekt anzeigen der ImageSpan, und wo hat die Instanz kommen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kann dies hilfreich sein:
Emoticons-Tastatur
Siehe auch dieses: Implementierungen von Emoji (Emoticons) Anzeigen/Tastatur-Layouts
Vielleicht könnten Sie verwenden:
String txt = "<img src=\"" + resourceID + "\"/>";
generiert ein HTML-tag und nach, dassSpanned spanned = Html.fromHtml(txt, emojiGetter, null);
editTextObj = setText(spanned,BufferType.SPANNABLE);
wo
emojiGetter
istEs funktioniert gut für mich. Ich habe eine CustomEditText Komponente zu vereinfachen, diese Umstellung.
ich erreicht habe, es zu tun wie dieser
//aber es überschreiben Sie die zuletzt eingegebene text siehe meine Frage