タグ

ブックマーク / qiita.com/JunSuzukiJapan@github (1)

  • [iOS]viewDidLayoutSubviewsの最後にはlayoutSubviewsを呼び出そう - Qiita

    症状 iOSアプリを開発していて、iPhoneシミュレータだとエラーもなく動くのに、実機で動かすとエラーがでた。 エラーの内容は、 を含むのは共通しているが、その後に続くエラーは様々のようだ。 解決策 これらのエラーは下記コードのように、ViewControllerのviewDidLayoutSubviewsメソッドの最後に、[self.view layoutSubviews]を呼び出すと実機でエラーなく実行できるようになる。 [self.view layoutSubivews]は必ず最後でなければならない。途中で呼び出してもエラーのままである(実体験)。 追記: [self.view layoutSubview]よりも[self.view layoutIfNeeded]のほうが良さそうなので修正しました。 情報をいただいたtomohisaotaさん、pebble8888@githubさん

    [iOS]viewDidLayoutSubviewsの最後にはlayoutSubviewsを呼び出そう - Qiita
    efcl
    efcl 2014/06/04
    AutoLayoutを使ってる際にself.viewに対して何らかの変更があった時AutoLayoutと不整合を起こして死んでしまうケースについて
  • 1