前提・実現したいこと
現在、カスタムセルにtextFieldを設置し、セル内に入力できるようになっています。
セル数は可変で、ボタンを押すとセルが追加され、追加されたセル(に設置されているtextField)にユーザーが入力できるようになっています。
発生している問題・エラーメッセージ
ボタンを押したとき、追加されたセルにあるtextFieldにカーソルを当て、キーボードを表示したいです。
該当のソースコード
swift
1// カスタムセル 2class CustomCell: UITableViewCell, UITextFieldDelegate { 3 var order: Int = 0 4 var parentView: ParentViewController! 5 6 @IBOutlet weak var cellTextField: UITextField! 7 8 // テキスト編集完了 9 func textFieldDidEndEditing(_ textField: UITextField) { 10 //入力値をリストに追加 11 parentView.inputCellView(at: order, text: self.cellTextField.text ?? "") 12 } 13 14 // 編集中 15 func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool { 16 parentView.inputCellView(at: order, text: self.cellTextField.text ?? "") 17 18 return true 19 } 20 21}
swift
1// セルのインスタンスを生成する 2 func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 3 4 // 品番セルを生成 5 let cell: hnbnCell = tableView.dequeueReusableCell(withIdentifier:"hnbnCell") as! hnbnCell 6 7 cell.hnbnTextField.text = hnbnList[indexPath.row] 8 cell.hnbnTextField.delegate = cell 9 cell.parentView = self 10 cell.order = indexPath.row 11 12 return cell 13 } 14
swift
1 //セル追加ボタン押下時 2 @IBAction func addCellButtonPushed(_ sender: Any) { 3 // dataを追加 4 textList.append("") 5 6 // リロード 7 self.textTableReload() 8 }
試したこと
色々ググってみましたがさっぱりわからず……
textField.becomeFirstResponder()なども記述してみましたが動かず、お手上げ状態です。
拙い質問で申し訳ありませんが教えてくださいませ。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/02/27 08:07
退会済みユーザー
2020/02/27 09:26
2020/03/02 10:30
退会済みユーザー
2020/03/02 10:52