SwiftUI中用ForEach构建List并使用.onMove时触发错误日志
iOS 16真机上List拖拽排序触发[EventDispatcher]日志警告的问题
这是iOS 16系统的已知日志噪声,完全不影响功能,可以直接忽略。
问题细节:
- 仅在iOS 16.x版本的真机上出现,iOS 16模拟器不会触发该日志
- 即使采用标准的SwiftUI拖拽排序实现(如下方代码),包括遵循官方教程或知名技术教程的写法,都会出现这条警告
- 日志内容固定为:
2022-10-12 18:48:52.833139+0200 Playground[1212:207280]
[EventDispatcher] Found no UIEvent for backing event of type: 11;
contextId: 0xFEEA6094
复现代码:
struct ContentView: View { @State var stuffList = ["Beer", "Chips", "Boardgames"] var body: some View { NavigationStack { List { ForEach(stuffList, id: \.self) { stuff in Text(stuff) } .onMove { stuffList.move(fromOffsets: $0, toOffset: $1) } } } } }
结论:
该日志属于系统底层的非关键性输出,不会导致功能异常。目前已有大量开发者反馈遇到同样情况,无需针对这条日志进行额外修复,正常推进开发即可。
内容的提问来源于stack exchange,提问作者cODinG iS eAsY
相关产品推荐
相关产品推荐

