LoginSignup
6
8

More than 3 years have passed since last update.

IBDesignableのRending Errorで困り果てたので状況別の解決策[Swift]

Last updated at Posted at 2019-07-28
Failed to render and update auto layout status, The agent crashed

こやつに相当悩まされたので状況別の対策をメモ

初めてでなんのこっちゃわからんとき

リフレッシュやderivedDataの削除、xcodeの再起動を試す
Xcodeのリフレッシュ方法と対処できるエラーについて - Qiita

ダメならDiagnosticReportsをチェック

DiagnosticReportsの開き方

これでDiagnosticReports(Mac内にあるらしい)をterminalから開ける

cd ~/library/Logs/DiagnosticReports/

open .

IBDesignableのcustom class内の関数でエラーが出ている

どのファイル・classがエラーの原因なのかわかっている場合

IBDesignableのcustom classのコードをいじる
init()を付け足す
・(init()でエラーが出てるなら)init()を消してみる
(※init()required init()は付け足す時も消す時もセット)

classの参照を外し、リフレッシュ操作を行う
Rending Errorが起きると原因になっているclassでなくても
IBDesignableを適用しているViewのがIBDesignableを反映してくれなかったり
ましてやViewの表示すらうまくいかなかったり(このパターンかなり多い)、勘弁してくれよとなるわけですが
StoryboardでのCustom ClassIBDesignableのclassの参照を外す
Derived Dataを消してBuild(再起動とかまでしても良い)

以上でも解決しました

cocoaTouchでエラーが出ている

・Podfileの最後にこれを付け足す

post_install do |installer|  
  installer.pods_project.build_configurations.each do |config|
    config.build_settings.delete('CODE_SIGNING_ALLOWED')
    config.build_settings.delete('CODE_SIGNING_REQUIRED')
  end
end

・podを1.4.0にダウングレードする(1.5.0以上で多数Rending Errorが確認されているらしい)

$ pod --version
1.7.1

$ gem uninstall cocoapods --version=1.7.1
Successfully uninstalled cocoapods-1.7.1

$ gem install -v 1.4.0

$ pod --version
1.4.0

他参考記事

Rending Errorそのもの
IB Designables MapViewControllerの自動レイアウトステータスのレンダリングと更新に失敗した(CocoaPodsを使用)・Issue#210・mapbox / mapbox-navigation-ios
ios - Xcode 8 - IB Designables - 自動レイアウトステータスのレンダリングと更新に失敗した、エージェントがクラッシュした - Stack Overflow
ios - ストーリーボードをレンダリングする際のIBDesignableエラー - Stack Overflow
ios - Xcode 8 - IB Designables - 自動レイアウトステータスのレンダリングと更新に失敗した、エージェントがクラッシュした - Stack Overflow
All objects disappear in view controller (main storyboard) when I use custom @IBDesignable UITextfield class. (Xcode 10, Swift 4.2) - Stack Overflow
ios - IB Designables:自動レイアウトステータスのレンダリングと更新に失敗 - Stack Overflow
「@IBDesignable error: IB Designables: Failed to update auto layout status:」が出た時の対処方法 - Qiita
IB Designables: Failed to render and update auto layout status が出たときの対処法 - Qiita

Podまわり
CocoaPodsのアンインストール方法
古いバージョンのCocoaPodsをつかう - Qiita

6
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
8