当子视图添加到listview中的框架时,xamarin.forms for ios中出现空引用异常

当子视图添加到listview中的框架时,xamarin.forms for ios中出现空引用异常,listview,xamarin,xamarin.forms,xamarin.ios,frame,Listview,Xamarin,Xamarin.forms,Xamarin.ios,Frame,我的ListView在Xamarin.Forms for iOS中面临空引用异常。在Xamarin.Forms for Android中,它运行良好。现在我使用的是Xamarin.Forms版本4.8.0.1687(最新的稳定版本)。这个问题以前运行良好,但我使用的是Xamarin.Forms版本是4.6.0.847。我将如何解决这个问题 堆栈跟踪: at Xamarin.Forms.Platform.iOS.FrameRenderer.AddSubview (UIKit.UIView view

我的ListView在Xamarin.Forms for iOS中面临空引用异常。在Xamarin.Forms for Android中,它运行良好。现在我使用的是Xamarin.Forms版本4.8.0.1687(最新的稳定版本)。这个问题以前运行良好,但我使用的是Xamarin.Forms版本是4.6.0.847。我将如何解决这个问题

堆栈跟踪:

at Xamarin.Forms.Platform.iOS.FrameRenderer.AddSubview (UIKit.UIView view) [0x00009] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\FrameRenderer.cs:26
at Xamarin.Forms.Platform.iOS.VisualElementPackager.OnChildAdded (Xamarin.Forms.VisualElement view) [0x00057] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementPackager.cs:119
at Xamarin.Forms.Platform.iOS.VisualElementPackager.Load () [0x0001e] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementPackager.cs:49
at Xamarin.Forms.Platform.iOS.VisualElementRenderer`1[TElement].SetElement (TElement element) [0x0012e] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:283
at Xamarin.Forms.Platform.iOS.VisualElementRenderer`1[TElement].Xamarin.Forms.Platform.iOS.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:158
at Xamarin.Forms.Platform.iOS.RendererPool.GetFreeRenderer (Xamarin.Forms.VisualElement view) [0x00048] in D:\a\1\s\Xamarin.Forms.Platform.iOS\RendererPool.cs:44
at Xamarin.Forms.Platform.iOS.RendererPool.FillChildrenWithRenderers (Xamarin.Forms.VisualElement element) [0x00035] in D:\a\1\s\Xamarin.Forms.Platform.iOS\RendererPool.cs:117
at Xamarin.Forms.Platform.iOS.RendererPool.UpdateNewElement (Xamarin.Forms.VisualElement newElement) [0x000ae] in D:\a\1\s\Xamarin.Forms.Platform.iOS\RendererPool.cs:77
at Xamarin.Forms.Platform.iOS.VisualElementPackager.SetElement (Xamarin.Forms.VisualElement oldElement, Xamarin.Forms.VisualElement newElement) [0x00037] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementPackager.cs:205
at Xamarin.Forms.Platform.iOS.VisualElementPackager.OnRendererElementChanged (System.Object sender, Xamarin.Forms.Platform.iOS.VisualElementChangedEventArgs args) [0x0000f] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementPackager.cs:186
at Xamarin.Forms.Platform.iOS.VisualElementRenderer`1[TElement].OnElementChanged (Xamarin.Forms.Platform.iOS.ElementChangedEventArgs`1[TElement] e) [0x00020] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:395
at Xamarin.Forms.Platform.iOS.VisualElementRenderer`1[TElement].SetElement (TElement element) [0x00172] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:296
at Xamarin.Forms.Platform.iOS.VisualElementRenderer`1[TElement].Xamarin.Forms.Platform.iOS.IVisualElementRenderer.SetElement (Xamarin.Forms.VisualElement element) [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.iOS\VisualElementRenderer.cs:158
at Xamarin.Forms.Platform.iOS.ListViewRenderer+UnevenListViewDataSource.CalculateHeightForCell (UIKit.UITableView tableView, Xamarin.Forms.Cell cell) [0x00035] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ListViewRenderer.cs:946
at Xamarin.Forms.Platform.iOS.ListViewRenderer+UnevenListViewDataSource.GetEstimatedRowHeight (UIKit.UITableView table) [0x0008c] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ListViewRenderer.cs:875
at Xamarin.Forms.Platform.iOS.ListViewRenderer+UnevenListViewDataSource.UpdateEstimatedRowHeight (UIKit.UITableView tableView) [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ListViewRenderer.cs:886
at Xamarin.Forms.Platform.iOS.ListViewRenderer+ListViewDataSource.DetermineEstimatedRowHeight () [0x00009] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ListViewRenderer.cs:1338
at Xamarin.Forms.Platform.iOS.FormsUITableViewController.ViewWillLayoutSubviews () [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ListViewRenderer.cs:1681
at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain(int,string[],intptr,intptr)
at UIKit.UIApplication.Main (System.String[] args, System.IntPtr principal, System.IntPtr delegate) [0x00005] in /Library/Frameworks/Xamarin.iOS.framework/Versions/14.4.1.3/src/Xamarin.iOS/UIKit/UIApplication.cs:86
at UIKit.UIApplication.Main (System.String[] args, System.String principalClassName, System.String delegateClassName) [0x0000e] in /Library/Frameworks/Xamarin.iOS.framework/Versions/14.4.1.3/src/Xamarin.iOS/UIKit/UIApplication.cs:65
at 



我们无法帮助调试我们看不到的代码,因为它在旧版本中工作,您可以先清理文件夹bin和obj,然后重建项目。如果它仍然不起作用,您可以将您的示例共享给github,这样我就可以在我这边测试它:)我们无法帮助调试我们看不到的代码,因为它在旧版本中工作,您可以首先清理文件夹bin和obj,然后重建项目。如果仍然不起作用,您可以将您的示例共享给github,这样我就可以在我这边测试它:)
<ListView.HeaderTemplate>
    <DataTemplate>
        <ContentView>
            <!--Sample Content-->
            <StackLayout Orientation="Horizontal" Margin="0,0,0,10" VerticalOptions="FillAndExpand" HorizontalOptions="EndAndExpand">
                <ImageButton Source="test.png"  HeightRequest="32"  WidthRequest="32" />
            </StackLayout>
        </ContentView>
    </DataTemplate>
</ListView.HeaderTemplate>

<ListView.GroupHeaderTemplate>
    <DataTemplate>
        <ViewCell>
            <Frame CornerRadius="3" Margin="0,0,0,3" x:Name="frame" Padding="0" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" HasShadow="False">
                <Grid   HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">
                    <Grid.ColumnDefinitions>
                        <ColumnDefinition Width="Auto" />
                        <ColumnDefinition Width="*" />
                    </Grid.ColumnDefinitions>
                    <!--Sample Content-->
                    <StackLayout Orientation="Horizontal" Margin="0,0,0,10" VerticalOptions="FillAndExpand" HorizontalOptions="EndAndExpand">
                        <ImageButton Source="test1.png"  HeightRequest="32"  WidthRequest="32" />
                    </StackLayout>
                </Grid>
            </Frame>
        </ViewCell>
    </DataTemplate>
</ListView.GroupHeaderTemplate>
<ListView.ItemTemplate>
    <DataTemplate>
        <local:CustomCell  >
            <ContentView>
                <Frame CornerRadius="3"   HasShadow="False" Margin="1,1,1,1" HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand">
                    <Grid HorizontalOptions="FillAndExpand"  VerticalOptions="FillAndExpand" Padding="8" >

                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto" />
                            <RowDefinition Height="Auto" />
                        </Grid.RowDefinitions>
                        <!--Sample Content-->
                        <StackLayout Orientation="Horizontal" Margin="0,0,0,10" VerticalOptions="FillAndExpand" HorizontalOptions="EndAndExpand">
                            <ImageButton Source="sample.png"  HeightRequest="32"  WidthRequest="32" />
                        </StackLayout>
                    </Grid>
                </Frame>
            </ContentView>
        </local:CustomCell>
    </DataTemplate>
</ListView.ItemTemplate>