Warum zeigen java.lang.Classcastexception-Fehler: android.text.SpannableString nicht cast auf java.lang.String?
Beim kopieren String
von jedem browser aus Seite pasteData
funktioniert.
Jedoch beim kopieren SpannedString
aus eine Nachricht gesendet, item editor(Feld), stürzt die Anwendung ab und zeigt diese Fehlermeldung:
java.lang.ClassCastException: android.text.SpannableString cannot be cast to java.lang.String
Mein code:
//since the clipboard contains plain text.
ClipData.Item item = clipBoard.getPrimaryClip().getItemAt(0);
//Gets the clipboard as text.
String pasteData = new String();
pasteData = (String) item.getText();
wo die ClipboardManager
Instanz definiert als clipBoard
unten:
clipBoard = (ClipboardManager) context.getSystemService(context.CLIPBOARD_SERVICE);
clipBoard.addPrimaryClipChangedListener(new ClipboardListener());
Alles was ich versuche zu tun, ist die Verwendung pasteData
im String
- format.
Wie man diesen Fehler loszuwerden?
Jede Hilfe ist willkommen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
SpannableString ist nicht als String direkt. so können Sie nicht Stimmen. aber, es kann in eine Zeichenfolge konvertiert werden. Sie können konvertieren Sie etwas zu string mit Verkettung mit der leeren Zeichenkette.
Vom CharSequence.toString()
Müssen Sie den nächsten code.
Können Sie nicht gegossen zu
android.text.SpannableString
weilitem.getText()
zurückCharSequence
, es gibt eine Menge von Implementierungen der esWenn Ihr Übergreifendes nur text mit HTML-Inhalt, dann können Sie wandeln es mit
Html.toHtml()
Es bei mir geklappt hat
String htmlString = String.valueOf(Html.fromHtml(contenttext,Html.FROM_HTML_MODE_COMPACT));