2017-09-19 10 views
1

は私がのinputTextでUIToolBarを追加ピッカー を使用して入力ビューを聖霊降臨祭。 アップグレード前はうまくいきました。 UIPickerViewのようになりました。UIToolBarを超えています。UiPickerView - 私はのinputTextを持って、私はに自分のプロジェクトを更新スウィフト4アップグレードエラー

私が見ることができる

が、私はそれをクリックした場合、私はUIPickerView

私は通常のTextInputにツールバーを設定した場合、それが表示され、うまく機能しているため、それは、完全に作業だUIToolBarをクリックしてくださいようなものです。..

何ありますか?私はpicker.addSubview(toolBar)が、聖霊降臨祭の同じ結果でも試してみました

var picker: UIPickerView 
picker = UIPickerView(frame: CGRect(x: 0, y: 200, width: view.frame.width, height: 300)) 
picker.backgroundColor = .white 

picker.showsSelectionIndicator = true 
picker.delegate = self 
picker.dataSource = PickerData as? UIPickerViewDataSource 


textField.inputView = picker 

let toolBar = UIToolbar() 
toolBar.barStyle = UIBarStyle.default 
toolBar.isTranslucent = true 
toolBar.tintColor = .blue 
toolBar.sizeToFit() 

let doneButton = UIBarButtonItem(title: "Seleziona", style: UIBarButtonItemStyle.plain, target: self, action: #selector(self.doneFunction(_:))) 
let spaceButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.flexibleSpace, target: nil, action: nil) 
let cancelButton = UIBarButtonItem(title: "Annulla", style: UIBarButtonItemStyle.plain, target: self, action: #selector(self.doneFunction(_:))) 

toolBar.setItems([cancelButton, spaceButton, doneButton], animated: false) 
toolBar.isUserInteractionEnabled = true 

textField.inputAccessoryView = toolBar 

は、ここに私のコードです。

答えて

0

私は同じ問題を抱えていました。私はそれをバックグラウンドで表示し、2つのサブビューをピッカーとツールバーに追加しました。ここ はコードです:

let toolBar = UIToolbar() 
    toolBar.barStyle = UIBarStyle.default 
    toolBar.isTranslucent = true 
    toolBar.tintColor = green 
    toolBar.sizeToFit() 

    picker = UIPickerView(frame: CGRect(x: 0, y: toolBar.frame.size.height, width: view.frame.width, height: 300)) 
    picker.tintColor = green 
    picker.showsSelectionIndicator = true 
    picker.delegate = self 
    picker.dataSource = self 

    let bgView = UIView(frame: CGRect(x: 0, y: 200, width: view.frame.width, height: 300 + toolBar.frame.size.height)) 

    let doneButton = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(nextPicker)) 
    let spaceButton = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.flexibleSpace, target: nil, action: nil) 
    let cancelButton = UIBarButtonItem(barButtonSystemItem: .cancel, target: self, action: #selector(cancelPicker)) 
    toolBar.setItems([cancelButton, spaceButton, doneButton], animated: false) 
    toolBar.isUserInteractionEnabled = true 

    bgView.addSubview(picker) 
    bgView.addSubview(toolBar) 
    cell.textField.inputView = bgView 

がうまくいけば、それが助けました。

+0

これは完璧な作業です – Piedecess

関連する問題