15 java string clipboard android spannablestring
String从任何浏览器页面复制时,pasteData正常工作.但是,SpannedString从邮件发送项目编辑器(字段)复制时,应用程序崩溃并显示以下错误消息:
java.lang.ClassCastException: android.text.SpannableString cannot be cast to java.lang.String
Run Code Online (Sandbox Code Playgroud)
我的代码:
// 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();
Run Code Online (Sandbox Code Playgroud)
其中ClipboardManager实例定义clipBoard如下:
clipBoard = (ClipboardManager) context.getSystemService(context.CLIPBOARD_SERVICE);
clipBoard.addPrimaryClipChangedListener(new ClipboardListener());
Run Code Online (Sandbox Code Playgroud)
所有我想要做的是使用pasteData中String的格式.如何摆脱这个错误?任何帮助表示赞赏.
gio*_*gio 32
返回具有相同字符的字符串,其顺序与此序列中的顺序相同.
您需要使用下一个代码.
String pasteData = item.getText().toString();
Run Code Online (Sandbox Code Playgroud)
你无法投射到android.text.SpannableString因为item.getText()回报CharSequence,也有很多的实现它
Ade*_*dem 16
SpannableString不是直接的String.所以,你不能施展.但是,它可以转换为字符串.你可以将一些东西转换为字符串,并与空字符串连接.
pasteData = "" + item.getText();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18173 次 |
| 最近记录: |