首页 > 解决方案 > ObjCRuntime.RuntimeException:无法编组 Objective-C(类型:Xamarin_Forms_Platform_iOS_HeaderWrapperView)

问题描述

谢谢,

完全错误: ObjCRuntime.RuntimeException:无法编组 Objective-C 对象 0x7fc8fc575d30(类型:Xamarin_Forms_Platform_iOS_HeaderWrapperView)。找不到此对象的现有托管实例,也无法创建新的托管实例(因为类型“Xamarin.Forms.Platform.iOS.HeaderWrapperView”没有采用一个 IntPtr 参数的构造函数)

我有一个从 API 异步加载数据的详细信息页面,数据检索可能需要大量时间,具体取决于数据的大小。检索到的数据通过绑定加载到列表视图中。列表视图具有分组并定义了组模板。当数据在后台线程中加载时,用户可以执行其他操作 - 这是每个设计。

页面之间的切换更容易,因为主页面是一个拆分视图,左侧是一个可选列表,右侧是我们刚刚讨论过的页面,右侧是选定项目详细信息页面。

问题是当用户在异步加载数据时选择左侧的其他项目时,现在会显示新页面,而前一页面将处于破坏或过时的边缘。在此事件期间,从端点检索前一页数据 - 绑定在当前不可用的前一页上启动。这以某种方式导致应用程序因以下错误而间歇性崩溃。

不知道为什么,错误堆栈显示错误从组标头中创建的元素开始,例如Image/ActivityIndi ​​cator .. 如下所示: Xamarin.Forms.Platform.iOS.VisualElementRenderer1[TElement].UpdateParentPageAccessibilityElements () [0x0001a] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:529 at Xamarin.Forms.Platform.iOS.VisualElementRenderer1[TElement].OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00131] 在 D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:414 在 Xamarin.Forms。 Platform.iOS.ViewRenderer`2[TView,TNativeView].OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00078] 在 D:\a\1\s\Xamarin.Forms.Platform.iOS\ViewRenderer。 cs:158 在 Xamarin.Forms.Platform.iOS.ActivityIndi​​catorRenderer.OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00000] 在 D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers \ActivityIndi​​catorRenderer.cs:38

或者

在 /Library/Frameworks/Xamarin.iOS.framework/Versions/14.0.0.0/src/Xamarin.iOS/ObjCRuntime/Runtime.cs:1260 中的 ObjCRuntime.Runtime.GetNSObject[T] (System.IntPtr ptr) [0x000d1] UIKit.UIView.get_Superview () [0x0002a] 在 /Library/Frameworks/Xamarin.iOS.framework/Versions/14.0.0.0/src/Xamarin.iOS/UIKit/UIView.g.cs:4848 Xamarin.Forms.Platform.iOS .VisualElementRenderer1[TElement].UpdateParentPageAccessibilityElements () [0x0001a] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:529 at Xamarin.Forms.Platform.iOS.VisualElementRenderer1[TElement].OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00131] 在 D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:414 在 Xamarin.Forms。 Platform.iOS.ViewRenderer`2[TView,TNativeView].OnElementPropertyChanged (System.Object sender, System.ComponentModel.PropertyChangedEventArgs e) [0x00078] 在 D:\a\1\s\Xamarin.Forms.Platform.iOS\ViewRenderer。 cs:158 在 Xamarin.Forms.Platform.iOS.ImageRenderer.<>n__1(System.Object 发件人,System.ComponentModel.PropertyChangedEventArgs e)

当页面本身不可用时,关于绑定应该如何表现的任何想法?这是 iOS 中的一个已知问题吗?

标签: c#iosxamarinxamarin.forms

解决方案


推荐阅读