🦋

SwiftUI: 絵文字を一覧から選択できるUIを作った💪

2023/09/11に公開

Zennのように絵文字を選択するUIが欲しくて検索したところ、MCEmojiPickerEmojiPickerなどが見つかりました。これらはかなりよくできていて、アプリを開発する分にはこれらを使えば良いのですが、負けた気がして自作欲が湧き上がったので実装を参考にしながらフルSwiftUIで自前実装してみました。


成果物

https://github.com/Kyome22/EmojiPalette

実装してみてわかったこと

  • 絵文字のリストはunicode.orgでバージョンごとにtxtで配布されている
  • iOS 16では絵文字のバージョンが14らしい
  • popover()モディファイアの中身のViewをpopoverとして表示したい場合には.presentationCompactAdaptation(.popover)が必要
  • ListSectionタイトルの上の余白はSwiftUIのAPIでは無くせない
  • ScrollViewReaderScrollViewProxy.scrollTo()Sectionheaderidをつけて強制スクロールさせてもいい感じにならないことがある

まだスキン(色違い)の選択機能は実装できていないので、コミット待ってます!

Discussion