简单的 TabView 在 iOS 16 中崩溃

2024-04-10

有一个奇怪的崩溃,只发生在 iOS 16 中。当我尝试创建一个TabView使用页面样式,当数组为空时它会崩溃。但它在 iOS 15 中运行得很好。这是 iOS 16 的错误吗?

Xcode版本:版本 14.0 (14A309)

iOS版本:16.0 和 16.1 测试版

struct TestView: View {
    @State private var data: [Int] = []
    var body: some View {
        TabView {
            ForEach(0..<data.count, id: \.self) { index in
                RoundedRectangle(cornerRadius: 12)
            }
        }
        .frame(height: 200)
        .tabViewStyle(.page(indexDisplayMode: .never))
        .onAppear {
            DispatchQueue.main.asyncAfter(deadline: .now() + 2) {
                self.data = [1,2,3,4]
            }
        }
    }
}

崩溃日志

2022-10-04 18:01:56.275879+0300 TestFirebaseCrash[24331:486169] *** Assertion failure in -[_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF020PagingCollectionView _validateScrollingTargetIndexPath:], UICollectionView.m:7339
2022-10-04 18:01:56.278900+0300 TestFirebaseCrash[24331:486169] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Attempted to scroll the collection view to an out-of-bounds item (0) when there are only 0 items in section 0. Collection view: <_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF020PagingCollectionView: 0x140841e00; baseClass = UICollectionView; frame = (0 0; 428 200); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x600001d8d260>; backgroundColor = UIExtendedGrayColorSpace 0 0; layer = <CALayer: 0x600001386d20>; contentOffset: {0, 0}; contentSize: {0, 200}; adjustedContentInset: {0, 0, 0, 0}; layout: <_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF012PagingLayout: 0x140514090>; dataSource: <_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF011Coordinator: 0x6000021f46c0>>.'
*** First throw call stack:
(
    0   CoreFoundation                      0x000000018040c304 __exceptionPreprocess + 172
    1   libobjc.A.dylib                     0x000000018005131c objc_exception_throw + 56
    2   Foundation                          0x0000000180b11f88 _userInfoForFileAndLine + 0
    3   UIKitCore                           0x00000001032279a8 -[UICollectionView _validateScrollingTargetIndexPath:] + 408
    4   UIKitCore                           0x0000000103227cc0 -[UICollectionView _contentOffsetForScrollingToItemAtIndexPath:atScrollPosition:] + 48
    5   UIKitCore                           0x0000000103228838 -[UICollectionView _scrollToItemAtIndexPath:atScrollPosition:animated:] + 220
    6   SwiftUI                             0x0000000106f5de08 OUTLINED_FUNCTION_15 + 18076
    7   SwiftUI                             0x0000000106f5dea8 OUTLINED_FUNCTION_15 + 18236
    8   SwiftUI                             0x0000000106f5dc88 OUTLINED_FUNCTION_15 + 17692
    9   SwiftUI                             0x0000000106f5dcf4 OUTLINED_FUNCTION_15 + 17800
    10  UIKitCore                           0x0000000103ea214c -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 1920
    11  QuartzCore                          0x0000000187ed749c _ZN2CA5Layer16layout_if_neededEPNS_11TransactionE + 440
    12  QuartzCore                          0x0000000187ee1f54 _ZN2CA5Layer28layout_and_display_if_neededEPNS_11TransactionE + 128
    13  QuartzCore                          0x0000000187e117d0 _ZN2CA7Context18commit_transactionEPNS_11TransactionEdPd + 452
    14  QuartzCore                          0x0000000187e3d47c _ZN2CA11Transaction6commitEv + 652
    15  UIKitCore                           0x0000000103a257f0 __34-[UIApplication _firstCommitBlock]_block_invoke_2 + 32
    16  CoreFoundation                      0x0000000180370e38 __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 20
    17  CoreFoundation                      0x0000000180370580 __CFRunLoopDoBlocks + 364
    18  CoreFoundation                      0x000000018036ae7c __CFRunLoopRun + 776
    19  CoreFoundation                      0x000000018036a75c CFRunLoopRunSpecific + 584
    20  GraphicsServices                    0x0000000188f60c98 GSEventRunModal + 160
    21  UIKitCore                           0x0000000103a0cb74 -[UIApplication _run] + 868
    22  UIKitCore                           0x0000000103a10b1c UIApplicationMain + 124
    23  SwiftUI                             0x0000000107702130 OUTLINED_FUNCTION_51 + 496
    24  SwiftUI                             0x0000000107701fd8 OUTLINED_FUNCTION_51 + 152
    25  SwiftUI                             0x0000000106ee5894 OUTLINED_FUNCTION_10 + 88
    26  TestFirebaseCrash                   0x000000010269ec6c $s17TestFirebaseCrash0abC3AppV5$mainyyFZ + 40
    27  TestFirebaseCrash                   0x000000010269ed14 main + 12
    28  dyld                                0x00000001028e9fa0 start_sim + 20
    29  ???                                 0x00000001029bd08c 0x0 + 4338733196
    30  ???                                 0x1a00000000000000 0x0 + 1873497444986126336
)
libc++abi: terminating with uncaught exception of type NSException
terminating with uncaught exception of type NSException
CoreSimulator 857.10 - Device: iPhone 13 Pro Max (29ECC9E3-B223-4591-A18A-1C858F528C45) - Runtime: iOS 16.0 (20A360) - DeviceType: iPhone 13 Pro Max
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Attempted to scroll the collection view to an out-of-bounds item (0) when there are only 0 items in section 0. Collection view: <_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF020PagingCollectionView: 0x140841e00; baseClass = UICollectionView; frame = (0 0; 428 200); clipsToBounds = YES; autoresize = W+H; gestureRecognizers = <NSArray: 0x600001d8d260>; backgroundColor = UIExtendedGrayColorSpace 0 0; layer = <CALayer: 0x600001386d20>; contentOffset: {0, 0}; contentSize: {0, 200}; adjustedContentInset: {0, 0, 0, 0}; layout: <_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF012PagingLayout: 0x140514090>; dataSource: <_TtC7SwiftUIP33_8825076C2763A50452A210CBE1FA4AF011Coordinator: 0x6000021f46c0>>.'
(lldb) 

iOS 上好像已经修复了16.1 Beta 4

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

简单的 TabView 在 iOS 16 中崩溃 的相关文章

  • 使用 Metal 高效计算 UIImage/CIImage 中有多少透明像素

    我们可以计算有多少个透明像素的最快方法是什么CIImage UIImage 例如 如果我们谈论效率 我的第一个想法是使用Metal Kernel使用任一CIColorKernel左右 但我不明白如何使用它来输出 计数 我还有其他想法 使用某
  • Xcode 6.4 Swift 单元测试无法编译:“GPUImage.h 未找到”“无法导入桥接标头”

    我的 Xcode 项目构建并运行良好 它有 Swift 和 Objective C 代码 它已安装 GPUImage 我向它添加了单元测试 现在它将不再编译 找不到 GPUImage h 文件 导入桥接标头失败 以下是我发现并尝试过的解决方
  • 从基元创建自定义形状

    我正在尝试通过组合原始形状来创建自定义物理形状 目标是创建一个圆形立方体 合适的方法似乎是初始化 形状 变换 我在这里找到的https developer apple com library prerelease ios documenta
  • Swift - 在 TableView 单元格中使用步进器递增标签

    这里又是一个 Swift 初学者 我只是想在每个 TableView 单元格中使用一个步进器来增加同一单元格中的标签 我发现了关于这个主题的几个问题 但它们包含其他元素 我无法提取基本概念 Swift Stepper Action 更改同一
  • swift 中闭包和函数作为参数的区别

    我有将近 4 年的 Objective C 经验 并且是 swift 的新手 我试图从 Objective C 的角度理解 swift 的概念 所以如果我错了 请指导我 在目标 c 中 我们有块 可以稍后异步执行的代码块 这绝对是完全合理的
  • 如何在 Safari 上打开本地 html 文件?

    我想打开本地 html 文件Safari集成到我的Swift 3应用 我知道如何使用网址来做到这一点 这是我用来执行此操作的代码 let encodedString url addingPercentEncoding withAllowed
  • 如何快速防止标签中出现孤儿?

    我有一个可以有一两行的标签 如果它有两行 我希望第二行至少有两个 或者可能三个 单词 而不仅仅是一个 关于如何使用 swift 实现这一点有什么想法吗 提前致谢 Daniel 编辑 我删除了我愚蠢的第一个想法 这些想法并没有真正的帮助 好吧
  • Cordova - 启动后出现白屏,控制台中没有例外

    我已经离开我的 Cordova 应用程序一段时间了 但昨天刚刚进行了一次新的克隆 发现它出现了 死机白屏 症状 启动画面显示 程序加载 然后我就得到一个空白屏幕 更多细节 CLI 科尔多瓦 6 1 1 安卓 5 1 1 ios 4 1 1
  • 如何检测 iOS 8 上的包含应用程序是否启用了应用程序扩展?

    我正在 iOS 8 beta 上开发一个自定义键盘 我想告诉用户如果我的自定义键盘未启用 如何在包含应用程序中启用它 有什么方法可以检测应用程序扩展是否已启用 首先让我们设置一些常量 以便于彼此理解 包含应用程序 安装扩展并保存扩展二进制文
  • Swift 3 中数组的 indexOf(_:) 方法的替换

    在我的项目 用 Swift 3 编写 中 我想使用从数组中检索元素的索引indexOf 方法 存在于 Swift 2 2 中 但我找不到任何替代方法 Swift 3 中是否有任何好的替代方法或类似的方法 Update 我忘记提及我想在自定义
  • 无法识别的选择器调用静态 iOS 库中的类别方法

    我正在使用一些第三方软件来帮助使用 Xcode 4 3 2 编写 iPad 应用程序 该软件是开源的 通常经过设置 因此其代码将与开发人员为应用程序编写的任何代码一起编译 因为我在很多地方使用该软件 所以我决定将其构建为 iOS 模拟器的静
  • 尝试注册 RCTBridgeModule 类 RCTFileReaderModule

    尝试为名称 FileReaderModule 注册 RCTBridgeModule 类 RCTFileReaderModule 但该名称已由类 FileReaderModule 注册 尝试使用命令react native run ios在i
  • CIAdditionCompositing 给出不正确的效果

    我正在尝试通过平均其他几个图像来创建图像 为了实现这一点 我首先将每个图像变暗 其系数等于我平均的图像数量 func darkenImage by multiplier CGFloat gt CIImage let divImage CII
  • 调用了 numberOfRowsInSection 但未调用 cellForRowAtIndexPath

    在我的表视图中节中的行数被调用两次但是cellForRowAtIndexPath不叫 我想在 tableView 中显示 Facebook 好友列表 如果 cellForRowAtIndexPath 调用我的问题就解决了 我在这里的数组中得
  • SwiftUI - 从 NSObject 继承的 ObservableObject 在 iOS 13 中不会更新

    我知道 这是 无法在 iOS XX 中工作 问题之一 但我完全陷入困境 所以我有一个ObservableObject继承自的类NSObject 因为我需要听委托方法UISearchResultsUpdating class SearchBa
  • 使用 NSFileHandle 覆盖数据

    使用 NSFileHandle 使用 truncateFileAtOffset 从文件末尾删除 n 个字符非常容易 void removeCharacters int numberOfCharacters fromEndOfFile NSF
  • iOS 键盘显示后分屏宽度

    我刚刚开始研究 Cordova 应用程序对分屏多任务处理的支持 到目前为止 该应用程序在模拟器中的 iPad 上显示和调整大小都很好 但是当我单击编辑字段并显示软件键盘时 100 宽度的值开始返回整个屏幕 而不是给出的窗口 初始显示 到目前
  • 弱变量中间为零

    弱变量什么时候变为零 weak var backgroundNode SKSpriteNode texture SKTexture image initialBackgroundImage backgroundNode position C
  • 防止点击 MKAnnotation 时检测到 MKMapView 上的触摸事件

    我有一个 UITapGestureRecognizer 当用户点击地图时 它将在我的 MKMap 上隐藏和显示工具栏 简单 但是 当用户点击 MKMapAnnotation 时 我不希望地图以正常方式响应点击 如上所述 此外 当用户点击地图
  • 未捕获的 Kotlin 异常:kotlin.native.In CorrectDereferenceException:非法尝试访问非共享

    我尝试使用 Kotlin MPP Multiplatform 开发 Android 和 iOS 之间的共享库 但我面临着 iOS 中线程的问题 对于我在 iOS 中的应用程序 我在主线程中建立了对象 但它可能调用其他线程中的函数并抛出此异常

随机推荐

  • Android:从另一个活动返回时避免调用 onCreate()

    假设我的应用程序包含两个活动 A 和 B 两者在 AndroidManifest 中都仅限于纵向 活动 A 启动活动 B 在Activity B中 有一个按钮 它调用finish 当点击时 问题是 当我垂直握住设备 纵向 并单击按钮时 调用
  • DT Shiny 中单列的渲染下拉列表

    我不精通 Javascript 并且想复制下拉菜单中提供的功能兰森塔布尔 https jrowen github io rhandsontable dropdown autocomplete包但对于DT https rstudio gith
  • 将 IEnumerable 对象序列化为字符串数组的扩展方法?

    我的最后一个问题是关于将对象的字符串表示形式序列化为 XML https stackoverflow com questions 1138414 can i serialize xml straight to a string instea
  • 为什么我的 dockerfile 不复制目录

    在我的 dockerfile 中我有这两行 ADD ansible inventory etc ansible hosts ADD ansible ansiblerepo 第一行有效 因为我可以运行容器并看到我的主机文件已填充了清单文件中的
  • 使用 getElementsByName() 设置选项值

    拥有这个字段集 fieldset legend death legend fieldset
  • 如何从 javascript 中的 API 调用返回值到 React 组件

    我似乎无法将 javascript 中此 API 调用的值返回到我的 React 组件 我有一个调用 API 的 java 脚本文件 在js文件中 返回结果 但是当我在react组件中调用useEffect中的js函数时 它返回未定义 ex
  • ctags 多行 C 函数原型

    ctags 有没有办法处理 C 中的多行函数原型 我四处寻找 fields S应该做多行原型 但我无法让它工作 ctags x c kinds pf fields S file file int foo int x int y ctags
  • django QueryDict 仅返回列表的最后一个值

    使用 django 1 8 我观察到一些奇怪的事情 这是我的 JavaScript function form submit var form form1 id request post this attr action form seri
  • 面向对象的 CSS:这重要吗? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我刚刚发现这个有趣的演示 http www slideshare net stubbornella object oriented css ty
  • 为什么React需要jsdom来测试?

    在为 React 组件编写测试时 您必须将它们渲染到 DOM 中 以便断言它们的正确性 例如 如果您想测试某个类是否已添加到给定状态的节点 则必须渲染到 DOM 节点 然后通过普通 DOM API 检查该 DOM 节点 问题是 考虑到 Re
  • 使用 C#、LINQ - 想要获取列名和数据值

    我想以一种相当通用的方式显示一行的内容 我将针对几个不同的表使用这种技术 输出将是纯文本 在 RichTextBox 中 如下所示 表名 PROPNUM xxxxxx 销售日期 月 日 年 最后一列 最后一个值 a 我知道每个表的列名 但真
  • 在Vue组件模板中的元素属性中组合字符串和变量

    我有一个表格 其中有 1 个客户或 2 个客户 我创建了一个用于选择计数的组件 另一个用于显示客户端信息表单的组件 因此 如果有 2 个客户端 使用 v for 则有 2 个表单 div div
  • 如何使用 SolrJ 获取突出显示的片段?

    我正在将我的应用程序从 Lucene 迁移到 Solr Solr 可以更好地处理突出显示 但是如果我搜索关键字 city 我会期望得到如下响应 id fdc3833a 0e4f 4314 ba8c title Paris is a beau
  • 异常模块的阴谋导入错误

    我到处搜索都找不到解决这个问题的方法 我正在尝试导入plotly在 Jupyter Notebook 中使用以下代码并分别收到以下错误 Code import sys print sys path sys path append usr l
  • C# 4.0 中的“动态”类型有何用途?

    C 4 0 引入了一种称为 动态 的新类型 听起来不错 但是程序员会用它做什么呢 有没有什么情况可以挽救局面 The dynamic添加了关键字以及 C 4 0 的许多其他新功能 以便更轻松地与具有不同 API 的其他运行时中或来自其他运行
  • Javascript 日期加 2 周(14 天)

    我用它来获取日期 var currentTime new Date var month currentTime getMonth 1 var day currentTime getDate var year currentTime getF
  • 即使文件存在于我的 Linux 上,php file_exists 也会返回 false

    这个问题已经被问过很多次了 但我找到的答案都没有帮助我 我正在尝试让 php file exists 工作 它起作用的唯一情况是 php 文件与要使用 file exist 的文件位于同一目录中并且仅使用文件名 即不包括路径 但这不是随之而
  • 开玩笑嘲笑测试之间出血,重置并不能解决问题

    测试两个模块 helper它利用render 这是可能的render扔 所以我处理它helper 我想要进行测试以确保其按预期工作 当我最初编写测试时 我在测试本身中编写了该测试所需的内容 包括模拟 使用jest doMock 一旦所有测试
  • Android 或 Java 类命名带有 $ 符号

    我正在审查某个项目 发现有许多类具有相同的名称 但末尾带有美元 符号 数字不断增加 例如 Class java Class 1 java Class 2 java Class n java OtherClass java OtherClas
  • 简单的 TabView 在 iOS 16 中崩溃

    有一个奇怪的崩溃 只发生在 iOS 16 中 当我尝试创建一个TabView使用页面样式 当数组为空时它会崩溃 但它在 iOS 15 中运行得很好 这是 iOS 16 的错误吗 Xcode版本 版本 14 0 14A309 iOS版本 16