テキストフィールドに「完了」ボタンを追加しようとしています。「完了」数字パッドにUIBarButtonItemが表示されない(Swift)
黒いUIToolbar はと表示されますが、「完了」ボタンは表示されません。
属性インスペクタでは、 'Return key'が 'Done'に設定され、 'Return-Enabled Return Key'が有効になっています。
UITextFieldのはこれがUITableViewCellの内側にあるデリゲート
に接続されている:
import UIKit
class itemTableViewCell: UITableViewCell, UITextFieldDelegate {
@IBOutlet var itemName: UILabel!
@IBOutlet var itemInput: UITextField!
var textFieldIsBeingEdited: Bool = false
override func awakeFromNib() {
super.awakeFromNib()
itemInput.delegate = self
self.addDoneButtonToKeyboard()
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
func addDoneButtonToKeyboard(){
let doneToolbar: UIToolbar = UIToolbar(frame: CGRectMake(0, 0, 320, 50))
doneToolbar.barStyle = UIBarStyle.BlackTranslucent
let flexSpace = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.FlexibleSpace, target: nil, action: nil)
let done: UIBarButtonItem = UIBarButtonItem(title: "Done", style: UIBarButtonItemStyle.Done, target: itemInput, action: Selector("doneButtonAction"))
let items = NSMutableArray()
items.addObject(flexSpace)
items.addObject(done)
doneToolbar.sizeToFit()
itemInput.inputAccessoryView = doneToolbar
}
func doneButtonAction()
{
self.itemInput.resignFirstResponder()
}
func textFieldShouldReturn(textField: UITextField!) -> Bool {
textField.resignFirstResponder()
return true
}
}
'items'を作成しましたが、それらのアイテムを' doneToolbar'に追加したことはありません。 – matt