1

これは、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
  • nib で、ウィンドウに NSProgressIndicator を追加し、そのアウトレットに接続します。Indeterminateチェックボックスをオンのままにします。
  • -applicationDidFinishLaunching、 を呼び出し-startAnimation:ますprogressIndicator
  • ビルドして実行します。

期待される結果:

メインスレッドですべてを行ったので、進行状況インジケーターは不確定な進行状況を喜んで表示するはずです。

実結果:

が呼び出されると、CA_ASSERT_MAIN_THREAD_TRANSACTIONS を引用してアプリがクラッシュし -startAnimation:ます。

これは、小さなデモ プロジェクトで確認できます。

私は何か悪いことをしましたか?期待される結果は正しくありませんか?

PS Apple の開発者フォーラムでこれを尋ねましたが、2 営業日後にモデレーターの承認を待っているので、削除して代わりにここに来ました :(

更新: まだ説明が不足しているため、Apple Bug 33593575 を提出しました。

4

1 に答える 1