私の個人アプリを作る流れを全部見せます その2:技術調査編

本企画の全記事はこちらから

前回の記事で作るものは「Pixel Art Pocket - ドット絵ポケット」というドット絵エディターに決まりました。 今回は、それが実際に作れるかどうかを確かめていきます。

以下が、今回のアプリに必要そうな機能です。

  1. エディター
  2. 絵の保存
  3. 一覧表示
  4. SNSへのシェア
  5. 色の選択
  6. Undo/Redo
  7. アニメーションGIF

それぞれ自分に実装できそうか確認していきます。

1. エディター → ◎

タップした位置にドットを描画し、完成した絵を画像にする機能です。

拙著 15章の図形描画(15.1)や画像作成(15.5)の応用で実装できそうです。 UIはタップした座標を使って処理(17.1)するか、UIButton(12.1)を並べればなんとかなると思います。

2. 絵の保存 → ◎

作成したドット絵のデータを保存する機能です。

各ドットの色情報を構造体に配列で持っておき、Codable(9.11)でテキストに変換し、テキストファイルとして保存(18.1)すればよいでしょう。

3. 一覧表示 → ◎

今まで保存したデータを一覧表示する機能です。

テーブルビュー(11.7、13.8)を使えば簡単です。エディター画面との画面遷移にはナビゲーションコントローラー(13.6)を使うことにします。

4. SNSへのシェア → ◎

ドット絵をSNSにシェアする機能です。

これはUIActivityViewController(13.14)に画像を渡すだけでよさそうです。

5. 色の選択 → ◯

エディターをタップした時にどの色でドットを描くか、ユーザーが選択する機能です。

iOSには色を選択する標準部品はありません。 GitHubでios color pickerと検索するとたくさん出てきました。この中のどれかしらのライブラリを使うことで実現できそうです。

検索結果:https://github.com/search?q=ios+color+picker

6. Undo/Redo → △

操作の取り消し・やり直しをすることができる機能です。

UndoManagerというクラスがありますが、残念ながら「Swift 4プログラミング入門 iOS 11+Xcode 9対応」には載っていません。 ドキュメントで使い方を調べながらの作業になりそうです。

7. アニメーションGIF → △

作成したドット絵を組み合わせてアニメーションGIFを作る機能です。

これも拙著には載っておらず、[iOS][swift] アニメーションGIFを作る \| Developers.IOなど参考情報を見ながらの実装になります。

作れそうか?

ここまで調べて、私は「作れそう」だと判断しました。

ただ、慣れないものを2つ以上詰め込むと失敗する可能性が高くなってしまうので、アニメーションGIFの作成機能は初期リリースから外そうと思います。

Undo/Redoはないと使い物になりませんが、アニメーションGIFはあれば面白いという機能なので、リリース後にニーズがあるようならバージョンアップで追加することにします。

さて、思いついたアプリが実現可能なことがわかってきました。 次回は画面構成を考えて、やることを細かくTODOリスト化します。