2016-08-19 15 views
-3

テキストフィールドに「完了」ボタンを追加しようとしています。「完了」数字パッドに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 
} 
} 
+1

'items'を作成しましたが、それらのアイテムを' doneToolbar'に追加したことはありません。 – matt

答えて

0

あなたlet doneToolbar: UIToolbar

doneToolbar.items = items as [AnyObject] 

簡単な答え

itemsを追加することを忘れ
items.addObject(flexSpace) 
items.addObject(done) 
doneToolbar.items = items as [AnyObject] 
doneToolbar.sizeToFit() 
itemInput.inputAccessoryView = doneToolbar 
+0

ああ、そうです。ありがとうございました。 doneToolbar.items = items asに変更する必要がありましたか? [UIBarButtonItem] –

+0

@ T.Mee - 作品が答えを受け入れるなら、仲間を歓迎します –

関連する問題