大佬教程收集整理的这篇文章主要介绍了单击TextView中的HTML链接会触发奇怪的AndroidRunTimeException,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
所以我的代码是这样的:
TextView para=new TextView(getApplicationContext()); LayoutParams lpfortext=new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT); lpfortext.setMargins(10,10,10); para.setText(Html.fromHtml(e.html())); para.setMovementMethod(LinkMovementMethod.geTinstance()); para.setLinksClickable(true); //error exists on removing this para.setAutoLinkMask(Linkify.ALL); //error exists on removing this para.setLayoutParams(lpfortext);
但是,当我实际点击应用程序中的链接时(在ICS手机上,尚未在模拟器上进行测试),我收到以下错误(堆栈跟踪的快照,最后的全文):
11-18 13:17:51.503: E/AndroidRuntime(6010): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? 11-18 13:17:51.503: E/AndroidRuntime(6010): at android.app.ContextImpl.startActivity(ContextImpl.java:1095) 11-18 13:17:51.503: E/AndroidRuntime(6010): at android.content.ContextWrapper.startActivity(ContextWrapper.java:276) 11-18 13:17:51.503: E/AndroidRuntime(6010): at android.text.style.URLSpan.onClick(URLSpan.java:62) 11-18 13:17:51.503: E/AndroidRuntime(6010): at android.text.method.LinkMovementMethod.onTouchEvent(LinkMovementMethod.java:212)
什么可能导致错误的想法以及如何修复它?
编辑:完整跟踪,根据要求,在下面 –
11-18 13:45:09.741: E/AndroidRuntime(7946): FATAL EXCEPTION: main 11-18 13:45:09.741: E/AndroidRuntime(7946): android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.app.ContextImpl.startActivity(ContextImpl.java:1095) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.content.ContextWrapper.startActivity(ContextWrapper.java:276) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.text.style.URLSpan.onClick(URLSpan.java:62) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.text.method.LinkMovementMethod.onTouchEvent(LinkMovementMethod.java:212) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.widget.TextView.onTouchEvent(TextView.java:8835) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.View.dispatchTouchEvent(View.java:5579) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1965) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1734) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1965) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1734) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1965) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1734) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1965) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1734) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1965) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1734) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:1965) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1734) 11-18 13:45:09.741: E/AndroidRuntime(7946): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1982) 11-18 13:45:09.741: E/AndroidRuntime(7946): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1441) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.app.Activity.dispatchTouchEvent(Activity.java:2421) 11-18 13:45:09.741: E/AndroidRuntime(7946): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1930) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.View.dispatchPointerEvent(View.java:5759) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewRootImpl.deliverPointerEvent(ViewRootImpl.java:2970) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewRootImpl.handlemessage(ViewRootImpl.java:2529) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewRootImpl.processInputEvents(ViewRootImpl.java:869) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.view.ViewRootImpl.handlemessage(ViewRootImpl.java:2538) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.os.Handler.dispatchmessage(Handler.java:99) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.os.Looper.loop(Looper.java:154) 11-18 13:45:09.741: E/AndroidRuntime(7946): at android.app.ActivityThread.main(ActivityThread.java:4945) 11-18 13:45:09.741: E/AndroidRuntime(7946): at java.lang.reflect.Method.invokeNative(Native Method) 11-18 13:45:09.741: E/AndroidRuntime(7946): at java.lang.reflect.Method.invoke(Method.java:511) 11-18 13:45:09.741: E/AndroidRuntime(7946): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 11-18 13:45:09.741: E/AndroidRuntime(7946): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 11-18 13:45:09.741: E/AndroidRuntime(7946): at dalvik.system.NativeStart.main(Native Method)
这样可以解决问题
TextView para = new TextView(this);这是指活动背景
以上是大佬教程为你收集整理的单击TextView中的HTML链接会触发奇怪的AndroidRunTimeException全部内容,希望文章能够帮你解决单击TextView中的HTML链接会触发奇怪的AndroidRunTimeException所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。