こんにちは、今日は夫の誕生日でお肉を食べたあじのひらきです。
子どもの寝かしつけ後、昼寝中、などなど細かい空き時間を利用して、黙々とアプリ開発を進めています。
開発中のアプリはホーム画面に「当日日付」を表示したいので、今日はその手順を簡単に記録しておく。とても簡単なコードですが、まあアウトプットとして。
1.storyboardに日付表示用のNavigationBarを配置します。
表示ラベルは現在「title」となっていますね。ここを当日日付にしたい訳です。
2.先ほど配置したNavigationBarと、ViewControllerを紐付けます。
storyboardのNavigationBarを選択し、ViewControllerへctrl+ドラッグします。
変数名を設定するダイアログの後、自動でコードがエディタに書き込まれます。
3.次は日付を取得するコードです。
こちらはシンプルなよくある取得方法です。Dateクラスを使い、フォーマットを文字列で指定する事で「yyyy/mm/dd」で取得します。
func getToday(format:String = "yyyy/MM/dd HH:mm:ss") -> String { let now = Date() let formatter = DateFormatter() formatter.dateFormat = format return formatter.string(from: now as Date) }
4.取得した日付文字列を画面に表示します。
3のgetTodayメソッドを呼び出し、2で作成した変数であるUINavigationItemクラスのtitleプロパティに代入します。
代入する処理はviewDidLoadメソッドの中に記述します。これで画面表示前に日付を設定する処理が走ります。
// 本日の日付 @IBOutlet weak var labelToday: UINavigationItem! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. labelToday.title = getToday(format:"yyyy-MM-dd") }
5.シミュレータを起動してみます。
するとこのようにtitle部分に当日日付が表示されます。
以上です!
個人的に、画面とコントロールの紐付けがGUIで出来るのが面白いと感じています。
直感的でわかりやすいですね。
引き続き、開発を進めていきます!