私は、ビューと1つのサブビューを持つビューコントローラを持っています。デバイスの向きが変更されると、ビューは自動的に再描画されますが、サブビューは再描画されません。明示的に[subview setNeedsDisplay]を行うと再描画されますが、私のコードにその呼び出しを入れる論理的な場所はありません。そして、私は、明示的に再描画するように指示する必要はないので、再描画するようにサブビューに指示するのは直感的ではないようです。ビューの再描画時にサブビューを自動再描画する方法はありますか?デバイスの向きが変わったときにサブビューを再描画させる正しい方法は何ですか?
1
A
答えて
6
次のようなことがわかりました。それが最良のアプローチでない場合、誰かがそれを行うためのより良い方法を与えてください。
はinitWithFrame:
方法
self.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
self.contentMode = UIViewContentModeRedraw;
で、subview.m
ファイルに次のようにこの作品と私のコードにうまくフィットしていてもサブビューを設定し、これらのプロパティを必要とする理由、私は表示されませんが、ビューのdoesnを含めます't。
0
スウィフト3/iOS10構文:
self.autoresizingMask = [.flexibleWidth, .flexibleHeight]
self.contentMode = .redraw
関連する問題
- 1. 方向変更時にサブビューをプログラムで再描画
- 2. Android force画面の向きが変更されたときにフラグメントの再描画が行われます
- 3. 向きが変わったときにWPFレイアウトを変更する最適な方法は何ですか?
- 4. NSView - 親ビューを再描画せずにサブビューを再描画する方法
- 5. CGgraphicsを他の向きで再描画する方法は?
- 6. レイアウトを回転させずに向きが変わったときにボタンを回転させる方法は?
- 7. ios-charts向きが変わったときにbarchartを正しくサイズ変更する方法は?
- 8. デバイスの向きが変わったときにAVPlayerを処理する方法は?
- 9. 向きが変わったときにウェブページをリロードする方法は?
- 10. ディメンションを変更したときにサブビューを強制的に再描画(drawRect)する方法
- 11. ビューを再描画するときのデバイスのパフォーマンスが悪い
- 12. Androidのアクティビティ向きが変わったときに再起動する
- 13. サブビューの向きが正しくない
- 14. iOS 6 - 向きが変わったときにカスタムコードを実行する方法
- 15. フォームエリア外に描画するときの再描画方法
- 16. wxpython:ウィンドウをリトラクトしたときに何かを再描画できますか?
- 17. デバイスの向きが変更されたときに、画面上のサブビュー位置を調整するにはどうすればよいですか?
- 18. 画面の向きが変わったときにウィジェットをキャッシュに保存する方法
- 19. デバイスの向きが変更されたときの黒い画面
- 20. チェックボックスの状態が変わったときに何かする方法は?
- 21. プログラムで設定したときに方向が変わってきます
- 22. ネストされたサブビューでCGContextDrawPathを描画する方法は?
- 23. UIImageViewがサブビューとしてウィンドウに追加されたときに向きを変更していません
- 24. Google Charts:画面のサイズが変わったときにグラフを再レンダリングする方法はありますか?
- 25. ビューが変更されたときにAndroidギャラリーを再描画する方法を教えてください。
- 26. this.stateが変更されたときにListViewを強制的に再描画する方法(dataSourceではなく)。
- 27. ウィンドウのサイズを変更したときに、Windowsフォームが再描画されないのはなぜですか?
- 28. UITableViewCellサブビューは再描画まで表示されません
- 29. デバイスの向きが変更されたときに、シンプルコードがIllegalStateExceptionをスローする
- 30. 方向がロックされているときにデバイスの向きを聞く