LoginSignup
1
2

More than 5 years have passed since last update.

[iOS]タグ一覧っぽい左上詰めのUIStackView

Last updated at Posted at 2019-03-03

経緯

以前UICollectionViewでの作り方を書いたのですが
https://qiita.com/netetahito/items/04303f898729d8ce9346

UIStackViewで組んだ方が簡単そうだなと薄々感じていました。

結果

ソース
https://github.com/osanaikoutarou/MultiLineStackView

構成

簡単に想像できると思いますが
verticalのUIStackViewにhorizontalのUIStackViewを追加していってるだけです。

所感:UICollectionViewに比べて簡単か?

delegate,datasource,layoutが無いのは簡単に思えました。
代わりに
・Viewにイベントハンドラを付ける必要がある
・「何番目のView」のような指定ができない(実装する必要がある)
あたりは少しかったるいです。

あと、各ViewがUIStackViewに組み込まれた際のwidthをどう計算するかという課題が残ります。
・AutoLayoutが設定されていたらそれに従う
・UILabelやUIButtonならtextやtitleから計算する
・protocolでwidthを受け取る
など考えられますが、汎用的にしようとすると複雑になりそうです。

ここらへん、どこかのライブラリで既に解消されてそうですね。

所感:もっと有効なシーンがありそう

Androidのように、左上からViewを並べていきたいというシーンにはもっと有効かもしれません。
当分使ってみます。

ちなみにhorizontal,verticalのspacingは既に設定できます。
中央揃え、右揃え、高さ固定なんかもできるはずです(用途があまり思い浮かばない)

1
2
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
1
2