回答:
IB_DESIGNABLE
ソースヘッダーファイルの定義が原因です。おそらく、IB_DESIGNABLE
現在編集しているソースファイルに(暗黙的にも)含まれているヘッダーファイルが含まれている場合にのみ問題が発生します。
IB_DESIGNABLE
ストーリーボードとソースファイルを継続的に無効にしてコンパイルする方法についての明確な解決策は見つかりませんでした。これを一時的に無効にするには、Xcodeフラグを使用してください。私はまた、周囲しようとしたIB_DESIGNABLE
と#ifdef
マクロが、それらはあっても考慮される#ifdef
偽と評価。1つずつコメント化するとIB_DESIGNABLE
役立ちますが、多くので実現可能な解決策ではありませんIB_DESIGNABLE
。
更新
やっとこの迷惑な行動を回避する方法を見つけました。ストーリーボードをアクティブウィンドウで開いた状態で、[エディター]メニューの[ビューの自動更新]を無効にします。これにより、カスタムコードを使用するストーリーボードエディターのビューの更新が停止し、開発が大幅にスピードアップします。ジャストインタイムコンパイルでカスタムコードの視覚的なプレビューを再度表示する必要がある場合は、このオプションを再度有効にします(ストーリーボードを再度開いて再度機能させる必要があるようです)。
動作のオン/オフを簡単に切り替えるには、command-option-control-Aなどのキーバインディングをコマンドに追加することができます。Xcodeにキーバインディングを追加するには、[設定]の[コマンドカンマ]をタップし、[キーバインディング]タブを選択し、検索バーを使用してコマンドを見つけ、右側の領域をダブルクリックして目的のキーストロークを追加します。
「それをやめる」アプローチ
または、[ビューを自動的に更新]をオフにし、オンにしないでください。
「すべてのビューを更新」の便利なキーストロークを作成します。たとえば、command-option-shift-R
作業中は、command-option-shift-Rを時々、または必要に応じてタッチしてください。通常、ストーリーボードで作業するときは、command-option-shift-Rをタッチするだけで済みます。
私にはこの問題があり、受け入れられた答えは私にとってはうまくいきませんでした。
私が抱えていた問題は、ストーリーボードを常にXCode内の独自のタブで開いたままにして、すばやくアクセスできるようにすることでした。
修正できる唯一の方法は、そのタブを閉じるか、別のファイル(通常のコードファイルなど)を選択してから、XCodeを閉じて再度開くことでした。その後は、キーストロークごとに再構築されなくなりました。
ただし、ストーリーボードを開いて変更を加える必要がある場合は、この問題が再発する可能性があるため、上記のプロセスを繰り返す必要があります。
本当にイライラするので、Appleがこれを修正するまで待ちきれません!
(ノಠ益ಠ)ノ彡┻━┻