SIGABRT:前提条件失败:导入的节点在读取其值之前已被删除

2024-03-09

自从beta 5 of Xcode 11启动后,我不得不更新代码。你知道该怎么做。然而,有一个奇怪的运行时错误在更改中幸存下来,我无法弄清楚为什么会发生这种情况。

我开始尝试将其限制在我的原始代码中,但令人惊讶的是,它也发生在我设法想出的最简单的测试项目中:带有表格的 TabView。

在运行时更改到另一个选项卡时导致 Xs 模拟器因 SIGABRT 崩溃并出现错误的过程:

“xxxxxx[23089:4642999] 前提条件失败:导入的节点已删除 读取其值之前:90"

如果用户连续点击进入detailview,也不会崩溃;只需运行应用程序并按第二个选项卡即可。

我修改了视图建筑、物体……什么都没有。当将行视图更改为简单文本时,它甚至会崩溃。我还删除了 @Binding 等以排除合并。

如果你们有人看到什么,请告诉我。它只会在 Beta 5 中崩溃,而不会在 Beta 2 中崩溃。

//  This file can be used in a new TabView app in Xcode 11 beta 5
//  ContentView.swift


import SwiftUI


class TestObject : Identifiable, Hashable{

    let identifier: String


    init() {
        self.identifier = UUID().description
    }

    static func == (lhs: TestObject, rhs: TestObject) -> Bool {
        return lhs.identifier == rhs.identifier
    }

    func hash(into hasher: inout Hasher) {
        hasher.combine(identifier)
    }

}

struct RowView: View {
    let aTitle: String
    var body: some View {
        HStack {
            Spacer()
            Text(aTitle)
            Spacer()
        }
    }
}

struct DetailView: View {
    let aObject: TestObject
    var body: some View {
        VStack {
            Spacer()
            Text(aObject.identifier)
            Spacer()
        }
    }

}


struct ListNavegableNoBinding: View {
    var testObjects: [TestObject]
    var body: some View {
        NavigationView {
            List(testObjects, id: \.self) {
                someObject in
                NavigationLink(destination: DetailView(aObject: someObject)) {
                    RowView(aTitle: someObject.identifier)
                }
            }

        }
    }
}

struct ContentView: View {
    @State private var selection = 0

    var tests : [TestObject] = [
        TestObject(),
        TestObject(),
        TestObject()
    ]


    var body: some View {
        TabView(selection: $selection){

            VStack{
                Text("First View")
                    .font(.title)
                ListNavegableNoBinding(testObjects: tests)
            }
            .tabItem {
                VStack {
                    Image("first")
                    Text("First")
                }
            }
            .tag(0)

            Text("Second View")
                .font(.title)

                .tabItem {
                    VStack {
                        Image("second")
                        Text("Second")
                    }
            }
            .tag(1)

        }
    }
}


我在 Xcode 11.0 (11A420a) 上仍然遇到这个问题。仅当在动态列表中使用 NavigationLink 时才会发生崩溃。对我来说唯一的解决办法是在列表中使用 ForEach ,如下所示:

List {
    ForEach(store.items, id: \.id){ item in
        NavigationLink(destination: YourDefinitionView()) {
            Text("some text")

        }

    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SIGABRT:前提条件失败:导入的节点在读取其值之前已被删除 的相关文章

  • 如何在 Swift 4 中以编程方式将 IBAction 添加到 uibutton?

    如何以编程方式将 IBAction 添加到 uibutton button addTarget self action Selector buttonAction for touchUpInside func buttonAction se
  • 如何执行 UIAlertAction 的处理程序?

    我正在尝试编写一个帮助程序类以允许我们的应用程序支持两者UIAlertAction and UIAlertView 然而 当写alertView clickedButtonAtIndex 方法为UIAlertViewDelegate 我遇到
  • 正在解除分配时尝试加载视图控制器的视图... UISearchController

    我有创建一个的代码UISearchController in my UIVIew sviewDidLoad self resultSearchController let controller UISearchController sear
  • Swift 中 UIViewController 子类成员的双重初始化

    我想制作一个自定义容器视图控制器并向其子类添加一些成员UIViewController 当我尝试使用以下代码从应用程序委托初始化它时 self window UIWindow frame UIScreen mainScreen bounds
  • iOS:保持应用程序在后台运行

    如何让我的应用程序在后台运行 我需要越狱我的 iPhone 才能执行此操作吗 我只需要这个应用程序每隔设定的时间间隔从互联网上检查一些内容 并在需要时发出通知 以供我自己使用 是的 不需要越狱 查看本文档的 实现长时间运行的后台任务 部分A
  • 搜索TableView无法选择行

    在搜索 tableView 时 每次我尝试选择一行时 它都会返回到未搜索的 tableView 我缺少什么 当不过滤表格时 segue 工作得很好 当搜索栏被激活时 选择行的能力就会消失 import UIKit import Founda
  • 我以前没见过的 CGRect 语法

    我在一些示例代码中看到了下面的语法 但不确定我是否理解它 CGRect imageRect CGRect size baseImage size 这只是初始化的一种简写方式吗CGRect相当于 CGRect imageRect CGRect
  • UINavigationControllerDelegate的didShowViewController方法被调用了两次

    class ViewController UIViewController UINavigationControllerDelegate override func viewDidLoad super viewDidLoad navigat
  • 如何创建一个 NSMutableArray 并为其分配一个特定的对象?

    我刚刚开始接触 Obj C 并且希望创建一个 MKAnnotations 数组 我已经创建了名为的 MKAnnotation 类TruckLocation其中包含名称 描述 纬度和经度 这是到目前为止我所拥有的数组 NSMutableArr
  • iOS UITableViewCell需要按两次才能调用didSelectRowAtIndexPath

    我有一个 UITableView 有时需要您触摸它两次才能选择一个单元格 更多细节 仅当表格一直向上或一直向下滚动后才需要两次触摸 只需第二次触摸即可呼叫didSelectRowAtIndexPath 当表格以自然的 向上滚动位置 打开时
  • 在 UITableView 中设置滚动位置

    我有一个应用程序 其工作方式与 iPhone 的 联系人 应用程序的工作方式有些相似 当我们添加新的联系人时 用户将被定向到包含联系人信息的仅查看屏幕 如果我们从导航栏中选择 所有联系人 用户将导航到查看最近添加的联系人的所有联系人列表 我
  • 从后台唤醒时应用程序会重新启动

    iOS 大师您好 我已经广泛搜索了答案 但找不到答案 我打赌对我的问题的第一个答复将是另一个类似的问题 但我找不到它 不管怎样 我的问题是我正在运行一个简单的地图应用程序 用户可以在地图上放置图钉 并在放置的图钉周围有一个自定义的圆圈覆盖
  • 如何使用 Unity 在 Android 设备上以各种宽高比显示游戏的相同部分?

    我从 Libgdx 引擎转向 Unity 是一名初级程序员 我尝试在 Unity 中为 Android 和 iOS 设备制作游戏 但在宽高比 分辨率缩放方面遇到问题 在 Libgdx 中 如果您开发了一些东西 您可以指定 默认 分辨率 并且
  • 使用prefersLargeTitles 和 UITableView 平滑滚动

    我在使用时遇到了滚动问题prefersLargeTitles并添加了UITableView 如果我设置prefersLargeTitles在导航控制器中 其根是UITableViewController一切都很好 导航大标题的滚动方式与我们
  • iOS UITableViewCell 配件在左侧?

    对于我的应用程序 我想要一些可以同时具有复选标记和详细信息披露按钮的单元格 也就是说 我希望它们看起来与 iOS 设置中的 Wi Fi 网络选择一模一样 左侧的复选标记 中间的内容 右侧的详细信息披露按钮 有没有正确的方法来做到这一点 或者
  • Swift 3 '[UIApplicationLaunchOptionsKey:任意]?'无法转换为 '[String : NSString]'

    我有一个 TVOS 应用程序已从 Swift 2 转换为 Swift 3 但出现以下错误 我不确定如何让它安静下来 UIApplicationLaunchOptionsKey 任意 无法转换为 String NSString 它出现在这段代
  • cordova-plugin-whitelist 适用于 Android,但不适用于 iOS (Phonegap Build)

    我正在开发一个用 Cordova 封装并使用 Phonegap Build 构建的 JavaScript 应用程序 我们包括cordova plugin whitelist来自我们构建中的 npm 并添加了
  • Swift 中的弹出视图

    我有一个弹出视图 没有选项卡栏 它弹出到带有选项卡栏的视图控制器 在带有选项卡栏的视图控制器中 我设置了一个单击按钮 以便弹出视图控制器 IBAction func PopUpClicked sender UIButton gt Void
  • 在 Swift 3 中单击和双击 UITableViewCell

    我在 TableView Cell 上有故事板 segue 我用它来在单元格单击中传输到另一个 VCdidSelectRowAt方法 现在我双击了TapGestureRecognizer处理手机上的点击问题 问题是 单击时 segue 正在
  • 应用程序图标未刷新

    我更改了新版本应用程序中的图标图像 并且我在设备中安装了旧版本应用程序 然后我安装了新版本 它在 iOS 5 中运行良好 但在 iOS 6 中 图标没有刷新 它仍然显示旧版本图标 徽标 如果没有安装旧版本应用程序 该设备在 iOS 5 和

随机推荐

  • tidytext、quanteda 和 tm 返回不同的 tf-idf 分数

    我正在尝试研究 tf idf 加权语料库 我希望 tf 是按文档划分的比例 而不是简单的计数 我希望所有经典文本挖掘库都会返回相同的值 但我得到了不同的值 我的代码中是否存在错误 例如 我是否需要转置对象 或者 tf idf 计数的默认参数
  • 迭代同步集合

    我在这里问了一个关于迭代 a 的问题Vector 我已经得到了一些好的解决方案的答复 但我读到了另一种更简单的方法 我想知道这是否是一个好的解决方案 synchronized mapItems Iterator
  • 在Python 3中编写一个函数将基数16转换为基数10

    有没有一种简单的方法来修改这段从基数 2 转换为基数 10 的代码 以将基数 16 转换为基数 10 我的目标是构建一个专用的转换函数 而不使用任何内置的 Python 功能进行计算 谢谢 BinaryVal int input Enter
  • ARC 中的“[[something keep] autorelease]”相当于什么?

    相当于什么 something retain autorelease in ARC 我遇到一个问题 类 DBRequest 调用我的委托来表示完成 然后 我的委托将 DBRequest 实例设置为 nil 即 dealloc 但是 当堆栈从
  • 双屏 HDMI 输出编程

    在我的搜索中 我发现 Android SDK 目前不支持控制 HDMI 端口活动和处理 HDMI 输出 尽管像摩托罗拉这样的某些设备制造商 不知道是否还有其他制造商也这样做 提供了 API 以实现更好的控制 下面是其中两个的链接 其中双屏链
  • 列出 Android 手机中所有已安装或支持的语言

    如何在 android 中以编程方式获取 语言和输入设置 下列出的所有已安装或支持的语言的列表 我已经使用了 Resources getSystem getAssets getLocales 但它只给了我该语言的代码 如 en en us
  • 如何将 Tomcat 嵌入到 Spring Framework MVC 应用程序中?

    我已经创建了所需的配置 控制器类 但我不清楚应该如何编排这些类来运行 tomcat 实例 我知道对于 Spring Boot 来说 这是使用 SpringApplication run 的问题 但我正在尝试探索 Spring Boot 之前
  • 在解决方案文件上调用自定义 MSBuild 目标

    我有一个解决方案文件 我的解决方案 sln 其中有一个项目 我的项目 vcxproj 我想执行一个自定义目标 我的自定义目标 通过解决方案在我的项目上 它看起来像这样 msbuild MySolution sln t MyCustomTar
  • 可空对象必须有一个值

    异常描述中有一个悖论 可空对象必须有一个值 这就是问题 我有一个DateTimeExtended班级 具有 DateTime MyDataTime int otherdata 和一个构造函数 DateTimeExtended DateTim
  • 契约异步和同步代码

    有很多问题询问是否混合异步和同步代码 大多数答案都表示 为异步方法公开同步包装器以及为同步方法公开异步包装器都是一个坏主意 然而 没有一个答案解决了必须混合异步和同步代码的特定场景 以及如何避免因此而出现的常见陷阱 请参见以下示例 clas
  • 如何设置Winsock UDP套接字?

    我想创建一个仅向客户端发送数据的 Winsock UDP 套接字 我希望内核为我选择一个可用的端口 另一方面 我想指出要使用哪个本地 IP 因为我正在运行一些网卡 我尝试过梳理迷宫般的套接字选项 以及将套接字地址中的端口绑定设置为 0 但均
  • 如何与Azure进行角色间通信?

    我完全不明白如何获得 Azure 角色 无论是 Web 角色还是辅助角色 来与另一个 Azure 角色进行通信 我查看了服务总线中继 其速度令人难以置信 在调试时将数据从一个角色获取到另一个角色大约需要 6 个小时 当我通过在云中运行的 W
  • 转置数据框

    有一种情况我有 gt sample df lt data frame id c 14129 29102 2191 2192 1912 color c blue red green purple blue day c monday wedne
  • 在 WooCommerce 中隐藏缺货相关产品

    在 WooCommerce 中我想隐藏缺货产品来自相关产品在单个产品页面中 是否可以 任何曲目都受到赞赏 这里给出的答案都不适合我 我相信woocommerce output related products args提到的过滤器不接受me
  • 持有自身引用的类

    浏览标准草案 n3242 我在第 9 2 条中发现了这句话 强调我的 非静态 9 4 数据成员不得具有不完整的类型 在 特别是 类 C 不应包含类的非静态成员 C 但是它可以包含一个指针或参考到类的对象 C 由此我认为定义一个这样的类是可以
  • 识别短文本的语言? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个文章列表 每篇文章都有自己的标题和描述 不幸的是 从我使用的来源来看 无法知道它们是用什么语言编写的 此外 文本并非完全用一种
  • 使用Matlab导入另一个.m文件

    我对 Matlab 还很陌生 我在 m 文件中定义了一个函数 我想在另一个 m 文件中的 m 文件中使用该函数 并且我想从命令窗口运行最后一个 m 文件的内容 我应该如何去实现这个目标 EDIT 为了澄清起见 我有一个功能a inside
  • 将时间和日期与此格式 HH.MM mm/dd/yyyy 进行比较。

    是否可以像这样使用军事时间和日期的格式进行比较HH MM mm dd yyyy 例如 1 08 25 06 10 2014 gt 23 18 06 09 2014 结果为 True 因为第 10 天大于第 09 天 2 23 25 06 1
  • Django Include() 在 urls.py 中与两个应用程序

    我相信这是一个简单的问题 但我很难弄清楚为什么这不起作用 我有一个 django 项目 并且添加了第二个应用程序 销售 在第二个应用程序之前 我的 urls py 只是将所有内容路由到第一个应用程序 图表 如下所示 urlpatterns
  • SIGABRT:前提条件失败:导入的节点在读取其值之前已被删除

    自从beta 5 of Xcode 11启动后 我不得不更新代码 你知道该怎么做 然而 有一个奇怪的运行时错误在更改中幸存下来 我无法弄清楚为什么会发生这种情况 我开始尝试将其限制在我的原始代码中 但令人惊讶的是 它也发生在我设法想出的最简