我在MainActivity上附加了一个片段。该片段具有一个RecyclerView,其Item通过适配器绑定。
在适配器中,我侦听单击某个项目(在recyclerView中行),并创建一个活动的意图(YoutubePlayerActivity)。切换时会发生TransactionTooLargeException。
我只是不知道为什么会这样...是我要从Fragment切换到Activity的标准任务。我没有通过Intent发送任何其他内容。只需创建Intent并说出startActivity()或startActivityFromFragment)。
有什么想法吗?
holder.cardView.setOnClickListener {
val intent = Intent(context.activity, YoutubePlayerActivity::class.java)
context.activity!!.startActivityFromFragment(context, Intent(context.activity, YoutubePlayerActivity::class.java), 876)
}
错误:
{
java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 4527596 bytes
at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4154)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Caused by: android.os.TransactionTooLargeException: data parcel size 4527596 bytes
at android.os.BinderProxy.transactNative(Native Method)
at android.os.BinderProxy.transact(Binder.java:761)
at android.app.IActivityManager$Stub$Proxy.activityStopped(IActivityManager.java:5155)
at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4146)
at android.os.Handler.handleCallback(Handler.java:789)
at android.os.Handler.dispatchMessage(Handler.java:98)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
}