23872


お世話になります。  
表題の通りです。

UITextFieldをタップした時、UIPickerViewが下から出てきた時に、「完了」とか「Done」とかの終了ボタンを設置するのですが、これって画面（View）の真ん中に表示することはできますか？

現在のコードは下記の通りで、左隅によっている状態です。  
できれば真ん中に配置がしたいのですが、お解りになる方がいらっしゃいましたらご教授願います。

[code]

    textField.inputView = pickerView
            var toolBar: UIToolbar!
            toolBar = UIToolbar(frame: CGRectMake(0, self.view.frame.size.height/6, self.view.frame.size.width, 40.0))
            toolBar.layer.position = CGPoint(x: self.view.frame.size.width/2, y: self.view.frame.size.height-20.0)
            toolBar.barStyle = .BlackTranslucent
            toolBar.tintColor = UIColor.whiteColor()
            toolBar.backgroundColor = UIColor.blackColor()
            let toolBarBtn = UIBarButtonItem(title: "完了", style: .Done, target: self, action: #selector(ViewController3.tappedToolBarBtn(_:)))
            toolBarBtn.tag = 1
            toolBar.items = [toolBarBtn]
            textField.inputAccessoryView = toolBar
    
[/code]


CC BY-SA 3.0
2016-04-09T10:15:10.423
23871
2016-04-09T10:55:00.500
13156
question
swift
UITextField内のUIPickerViewのUIBarButtonItemのセンタリングってできますか？


こんなやり方があるようです。`toolBar.items = [toolBarBtn]`の行を次の2行で置き換えてみてください。

[code]

            let spacer = UIBarButtonItem(barButtonSystemItem: .FlexibleSpace, target: nil, action: nil)
            toolBar.items = [spacer, toolBarBtn, spacer]
    
[/code]

* * *

(追記)こちらにわかりやすいスレがありました。この応用ですね。  
[UIToolBar
アイテムの位置をコードで指定する方法をお教え下さい](https://ja.stackoverflow.com/questions/13163/uitoolbar-%E3%82%A2%E3%82%A4%E3%83%86%E3%83%A0%E3%81%AE%E4%BD%8D%E7%BD%AE%E3%82%92%E3%82%B3%E3%83%BC%E3%83%89%E3%81%A7%E6%8C%87%E5%AE%9A%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%82%92%E3%81%8A%E6%95%99%E3%81%88%E4%B8%8B%E3%81%95%E3%81%84)


CC BY-SA 3.0
2016-04-09T10:55:00.500
23872
2016-04-09T10:55:00.500
2017-04-13T12:52:39.113
-1
13972
23871
answer