はじめに

  • 時刻表のアプリとかでよく見る,選択したらActionSheetとPickerが混ざったやようなやつが開いて時間を選べるやつを実装したかった

使ったやつ

名前の通りActionSheetとPickerが組み合わさったものが使えるプラグイン

探し求めてたものがピンポイントでありました

環境

  • macOS Sierra 10.12.2
  • Xcode 8.3.1
  • Swift3
  • Carthage 0.25.0

ActionSheetPicker-3.0のインポート

ActionSheetPickerはライブラリ管理ツールを用いてインポートします.

今回はライブラリ管理ツールにCarthageを用いますが,CocoaPodsでもできます

Carthageのインポートはreadmeに全て書いてあります.

Carthage自体の使い方はこの記事が丁寧で分かりやすかったので,ここをみつつInputFile名を $(SRCROOT)/Carthage/Build/iOS/CoreActionSheetPicker.framework に置き換えれば使ったことない人でも問題ないと思います.

こんな感じ

storyboard

まず,Main.storyboardにラベルとボタンを置きます.

その後,スクリプトにそれぞれを紐付けます. ボタンはConnectionをActionにします.

ソースコード

storyboardに置いたボタンに動作を記述します.

gist.github.com

実行結果

解説

  • 9行目の datePickerMode の値を変更するとPickerの選択肢が変わる
    • UIDatePickerMode.date だと下の図みたいに日付だけとか
    • UIDatePickerMode. でいろいろサジェストされるから用途に合ったものを選択するといいと思います
  • 13行目のフォーマットを書き換えることで任意の表示方法にできる
  • 22行目の数字の値の感覚で分が表示される

github

リポジトリ

cloneした後,ディレクトリ内でCarthageをビルドしないとエラーが出ると思うので ,ターミナルでcloneしたディレクトリの中で carthage update –platform iOS を実行