我将带有setTextIsSelectable(true)
的文字可选TextView放入Android版面中,文字由Html.fromHtml(sometexts)
设置。
它允许用户复制文本很好。
我的JellyBean设备在所选文本的顶部为小气球提供剪切/复制/粘贴按钮。
但是当用户意外点击复制菜单左侧的剪切图标时,它会崩溃。
日志如下所示,但在我的应用程序中没有必要处理此异常 如何防止应用程序崩溃?
01-06 19:29:16.025 2048-2048/? E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.ClassCastException: android.text.SpannableString cannot be cast to android.text.Editable
at android.widget.TextView.deleteText_internal(TextView.java:8865)
at android.widget.TextView.onTextContextMenuItem(TextView.java:8315)
at android.widget.Editor$ActionPopupWindow.onClick(Editor.java:3556)
at android.view.View.performClick(View.java:4114)
at android.view.View$PerformClick.run(View.java:17097)
at android.os.Handler.handleCallback(Handler.java:615)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4885)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
at dalvik.system.NativeStart.main(Native Method)
答案 0 :(得分:0)
我不确定,我现在无法测试,但可能会尝试将其放入TextView xml中:
android:bufferType="spannable"
如果它仍然不起作用,您可以自己实施可选事件的操作。 看看这个问题的答案: Android- How can I show text selection on textview?