问题是这样的

寻梦少年` 2020-03-02 10:07:07
你们看这张图,在这个弹窗中,我的链接是用textview里边加入的android:autoLink="all"或者android:autoLink="web"都不行,点击跳转都会报错: 报错的如下: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? at android.app.ContextImpl.startActivity(ContextImpl.java:931) at android.app.ContextImpl.startActivity(ContextImpl.java:907) at android.content.ContextWrapper.startActivity(ContextWrapper.java:379) at android.content.ContextWrapper.startActivity(ContextWrapper.java:379) at android.text.style.URLSpan.onClick(URLSpan.java:107) at android.text.method.LinkMovementMethod.onTouchEvent(LinkMovementMethod.java:231) at android.widget.TextView.onTouchEvent(TextView.java:10172) at android.view.View.dispatchTouchEvent(View.java:12608) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3074) at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2747) at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:1019) at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1929) at android.app.Dialog.dispatchTouchEvent(Dialog.java:891) at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:967) at android.view.View.dispatchPointerEvent(View.java:12863) at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5303) at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5074) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4547) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4617) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4575) at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4730) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4583) at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4787) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4547) at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:4617) at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:4575) at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:4583) at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:4547) at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7313) at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7282) at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7237) at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:7425) at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:196) at android.os.MessageQueue.nativePollOnce(Native Method) at android.os.MessageQueue.next(MessageQueue.java:330) at android.os.Looper.loop(Looper.java:169) at android.app.ActivityThread.main(ActivityThread.java:7056) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:536) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:876) 哪位大佬指点指点,多谢各位
...全文
351 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
日行一善庸人自扰之早睡早起
寻梦少年` 2020-03-04
  • 打赏
  • 举报
回复
引用 9 楼 bdmh的回复:
如果你用的是getApplicationContext(),就不行要加标识
多谢你了,我的问题已得到解决,原因是我用的是弹窗,而弹窗tvioi.Dikhgu(this);this之前就是传入Application.getContext()这种值才导致的😂
寻梦少年` 2020-03-04
  • 打赏
  • 举报
回复
引用 9 楼 bdmh的回复:
如果你用的是getApplicationContext(),就不行要加标识
Intent intent = new Intent(MainActivity. this,SubActivity.class); startActivity(intent); 我上一个活动来到这个活动的时候就使用的类似,关于这个是textview里边有一个标识android:autoLink="web"其他没有什么与这个相关的了吧
bdmh 2020-03-04
  • 打赏
  • 举报
回复
如果你用的是getApplicationContext(),就不行要加标识
bdmh 2020-03-04
  • 打赏
  • 举报
回复
要看你Intent使用的Context是谁
寻梦少年` 2020-03-03
  • 打赏
  • 举报
回复
引用 1 楼 bdmh的回复:
Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK 这不是告诉你了吗,你是打开了一个外部的activity吗,intent中加上FLAG_ACTIVITY_NEW_TASK标识
谢谢你的回答,但是我的是在textview里边加这个的android:autoLink="all",你描述的属性该怎么添加
bdmh 2020-03-03
  • 打赏
  • 举报
回复
Calling startActivity() from outside of an Activity context requires the FLAG_ACTIVITY_NEW_TASK 这不是告诉你了吗,你是打开了一个外部的activity吗,intent中加上FLAG_ACTIVITY_NEW_TASK标识
寻梦少年` 2020-03-03
  • 打赏
  • 举报
回复
引用 3 楼 bdmh的回复:
你写了什么代码吗
这个东西有什么会影响到它的
寻梦少年` 2020-03-03
  • 打赏
  • 举报
回复
这个东西有什么会影响到它的
水的川 2020-03-03
  • 打赏
  • 举报
回复
Intent intent = new Intent(this,你要跳转的外部activity);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
this.startActivity(intent);
bdmh 2020-03-03
  • 打赏
  • 举报
回复
你写了什么代码吗

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧