読者です 読者をやめる 読者になる 読者になる

【swift】UIBarButtonItemを右寄せする方法メモ

swift ios iPhoneアプリ開発

はじめに

今回やりたかったのは、こんな感じ。
UIDatePickerの上にUIToolbarをおいて、UIToolbarの中にUIBarButtonItem(決定ボタン)をおいて右寄せにする

f:id:yoppy0066:20151114113528p:plain

実装

UIBarButtonItemのbarButtonSystemItemをUIBarButtonSystemItem.FlexibleSpaceに設定して
これをUIToolbarにセットしてやればいけました。
空白のUIBarButtonItemをいれるようなイメージでしょうか

let input = UITextField(・・・)

// UIDatePicker
let datepicker = UIDatePicker()
datepicker.timeZone = NSTimeZone.localTimeZone()
datepicker.datePickerMode = UIDatePickerMode.Date
datepicker.backgroundColor = UIColor.whiteColor()
input.inputView = datepicker

// ツールバー(完了ボタン)
let toolbar = UIToolbar(frame: CGRectMake(0, 0, self.view.frame.size.width, 44))
toolbar.tintColor = UIColor.blackColor()
toolbar.backgroundColor = UIColor.whiteColor()
let toolbarbutton = UIBarButtonItem(title: "決定", style: .Plain, target: self, action: "onDidChangeDate:")
let toolbarbuttongap = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexiですbleSpace, target: nil, action: nil)
toolbar.items = [toolbarbuttongap, toolbarbutton]
input.inputAccessoryView = toolbar

以上です