【问题标题】:NSProgressIndicator built-in animation raises CA_ASSERT_MAIN_THREAD_TRANSACTIONSNSProgressIndicator 内置动画引发 CA_ASSERT_MAIN_THREAD_TRANSACTIONS
【发布时间】:2017-07-28 01:07:46
【问题描述】:

对我来说,这看起来像是 NSProgressIndicator 或 Xcode 9 中的错误:

  • 在 macOS 10.12.6 中运行 Xcode 9 Beta 1 或 Beta 4。
  • 文件 > 新项目、macOS、Cocoa 应用、Objective-C 或 Swift、ARC 与否、无情节提要、最新 (10.13) SDK。
  • 在应用目标的环境中,设置CA_ASSERT_MAIN_THREAD_TRANSACTIONS=1。
  • 在应用委托中,添加一个 IBOutlet progressIndicator。
  • 在笔尖中,将 NSProgressIndicator 添加到窗口,连接到该插座。保持复选框不确定处于打开状态。
  • 在-applicationDidFinishLaunching 中,在progressIndicator 上致电-startAnimation:。
  • 构建并运行。

预期结果:

进度指示器应该很高兴地显示不确定的进度,因为我在主线程上做了所有事情。

实际结果:

应用程序崩溃,引用 CA_ASSERT_MAIN_THREAD_TRANSACTIONS,当 -startAnimation: 被调用。

您可以在tiny demo project 中看到这一点。

我做错了吗?我的预期结果不正确吗?

附言我在 Apple 的开发者论坛上问过这个问题,但在 2 个工作日后仍在等待版主批准,所以我删除了它并来到这里 :(

更新:仍然缺乏解释,我提交了 Apple Bug 33593575。

【问题讨论】:

    标签: multithreading core-animation xcode9-beta nsprogressindicator xcode9


    【解决方案1】:

    这是 NSProgressIndicator 中的一个错误。您的错误报告(感谢您提交!)被标记为早期错误的重复,该错误已在 macOS 10.13 中解决。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多