平成30年3月30日(金曜日)
★Expandable cells with stack view
github:
★expandable-cells-medium(github)
最後に、スタックビューに2つ以上のビューを配置し、必要に応じて外観をカスタマイズする必要があります。 あなたが従わなければならないパターンは、最初のビューが常にユーザーに見える折り畳まれたビューであるということです。 重要なのは、折りたたまれたビューに高さを設定することです。 私の場合、これは50ですが、より大きな折りたたみセルを作成したい場合は、別の値を設定する必要があります。
スタックビューを使用して、サブビューの高さや幅を手動で変更している間は、このコントロールを適切に設定することを忘れないでください。 私のセルの例は次のとおりです。
現時点でビュー設定を終了すると、セルを展開したときに「制約を同時に満たすことができません。」というメッセージがコンソールに表示されているのを見ると、おそらく失望します。 理由はシンプルです。隠れたビューの高さの制約は0なので、セルを展開するとスタックビュー全体の高さに矛盾が生じます。 幸いにも、修正は非常に簡単です。 折りたたみビューの高さの制約を999に変更するだけです。
UIStackView guide:
https://www.raywenderlich.com/114552/uistackview-tutorial-introducing-stack-views
UITableView guide: https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/TableView_iPhone/CreateConfigureTableView/CreateConfigureTableView.html
[iOS 9] UIStackViewを知らない人向けの基礎知識
↑「SubViewsの数を変化させる」(arrangedSubviews)
「下記イメージのようにボタンを押した時にSubViewの数を変更させるには、hiddenを切り替えるだけで自動的に最適なレイアウトになります他エトセトラ」