When copying String
from any browser page, pasteData
works properly.
However when copying SpannedString
from a message sent item editor(field), the application crashes and shows this error message:
java.lang.ClassCastException: android.text.SpannableString cannot be cast to java.lang.String
My 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();
where the ClipboardManager
instance defined as clipBoard
, below:
clipBoard = (ClipboardManager) context.getSystemService(context.CLIPBOARD_SERVICE); clipBoard.addPrimaryClipChangedListener(new ClipboardListener());
All I’m trying to do is use pasteData
in String
format.
How to get rid of this error?
Any help is appreciated.
Advertisement
Answer
SpannableString is not String directly. so, you can not cast. but, it can be converted to string. you can convert something to string with concatenating with empty string.
pasteData = "" + item.getText();