Ios UITextField不可编辑且不显示键盘

Ios UITextField不可编辑且不显示键盘,ios,swift,uitableview,uitextfield,Ios,Swift,Uitableview,Uitextfield,我正在使用表视图控制器来显示内容。我试图创建一个可编辑的UITextField,但它不可编辑。我可以让它们显示在每个单元格中,但当我点击它们时,它们是不可编辑的。我还试图存储用户在每个单元格中输入的内容。请忽略注释掉的部分。这是我的密码: override func numberOfSections(in tableView: UITableView) -> Int { return 1 } override func tableView(_ tableView: UITableV

我正在使用表视图控制器来显示内容。我试图创建一个可编辑的UITextField,但它不可编辑。我可以让它们显示在每个单元格中,但当我点击它们时,它们是不可编辑的。我还试图存储用户在每个单元格中输入的内容。请忽略注释掉的部分。这是我的密码:

override func numberOfSections(in tableView: UITableView) -> Int {
    return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return words.count
}


override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "transportCell", for: indexPath)

    self.tableView.rowHeight = 100



    //var a = Array(words[indexPath.row])

    //a.shuffle()

    //var shuffledWord = String(a)


    //shuffledWord = shuffledWord.lowercased()

    let sampleTextField =  UITextField(frame: CGRect(x:60, y: 30, width: 150, height: 40))
    sampleTextField.placeholder = "Enter text here"
    sampleTextField.font = UIFont.systemFont(ofSize: 15)
    sampleTextField.borderStyle = UITextBorderStyle.roundedRect
    sampleTextField.autocorrectionType = UITextAutocorrectionType.no
    sampleTextField.keyboardType = UIKeyboardType.default
    sampleTextField.returnKeyType = UIReturnKeyType.done
    sampleTextField.clearButtonMode = UITextFieldViewMode.whileEditing;
    sampleTextField.contentVerticalAlignment = UIControlContentVerticalAlignment.center
    sampleTextField.delegate = self as? UITextFieldDelegate
    var userEntry = sampleTextField.text
    sampleTextField.tag = indexPath.item // You will access the text field with this value
    cell.addSubview(sampleTextField)


    //cell.textLabel?.text = shuffledWord

    //var imageName = UIImage(named: words[indexPath.row])
    //cell.imageView?.image = imageName

    return cell
}
将cell.addSubviewsampleTextField更改为cell.contentView.addSubviewsampleTextField

有关contentView的详细信息,请参阅将cell.addSubviewsampleTextField更改为cell.contentView.addSubviewsampleTextField


有关contentView的详细信息,请参阅。textfield不可编辑可能有两个原因

检查是否已使用UITextFieldDelegate并将textfield delegate设置为self,即textfield.delegate=self

将子视图添加到单元格时,请确保将其添加到单元格的内容视图中。e、 g cell.contentView.addSubviewtextField

确保textfield顶部没有其他视图

如果您已实施:

func textField应该开始编辑textField:UITextField->Bool,然后它应该返回true,否则键盘将不会出现,您将无法编辑文本字段

检查textfield是否同时启用查看swift文件和情节提要。 6.确保序列图像板或Xib文件中的textfield与您声明textfield的视图控制器中的@IBOutlet textfield之间建立了正确的连接

请检查您是否正在辞职键盘,或者textFieldShouldBeginEditing、shouldChangeCharactersIn和textFieldShouldBeginEditing代理的endEditing设置为true。
我希望这对你有帮助

文本字段不可编辑可能有两个原因

检查是否已使用UITextFieldDelegate并将textfield delegate设置为self,即textfield.delegate=self

将子视图添加到单元格时,请确保将其添加到单元格的内容视图中。e、 g cell.contentView.addSubviewtextField

确保textfield顶部没有其他视图

如果您已实施:

func textField应该开始编辑textField:UITextField->Bool,然后它应该返回true,否则键盘将不会出现,您将无法编辑文本字段

检查textfield是否同时启用查看swift文件和情节提要。 6.确保序列图像板或Xib文件中的textfield与您声明textfield的视图控制器中的@IBOutlet textfield之间建立了正确的连接

请检查您是否正在辞职键盘,或者textFieldShouldBeginEditing、shouldChangeCharactersIn和textFieldShouldBeginEditing代理的endEditing设置为true。 我希望这对你有帮助

据我说

您需要在选择tableview单元格时设置sampleTextField的优先级。 无论何时尝试选择要编辑的sampleTextField, tableview的didselect函数正在获取调用。用推杆检查 didselect函数中的断点。如果发生这种情况,你需要 设置优先级。 另外,在文本字段中检查您是否正在退出键盘,并在键盘的委托功能中退出编辑。
sampleTextField.isUserInteractionEnabled=true 另外,将cell.contentView上的sampleTextField直接添加到单元格中。 曾经, 您可以编辑,您可以直接从textfield获取数据,通过sampleTextField.text存储数据

希望,这将是有效的。如果您仍然发现问题,请随时提问。

根据我的说法

您需要在选择tableview单元格时设置sampleTextField的优先级。 无论何时尝试选择要编辑的sampleTextField, tableview的didselect函数正在获取调用。用推杆检查 didselect函数中的断点。如果发生这种情况,你需要 设置优先级。 另外,在文本字段中检查您是否正在退出键盘,并在键盘的委托功能中退出编辑。
sampleTextField.isUserInteractionEnabled=true 另外,将cell.contentView上的sampleTextField直接添加到单元格中。 曾经, 您可以编辑,您可以直接从textfield获取数据,通过sampleTextField.text存储数据


希望,这将是有效的。如果您仍然发现问题,请随时提问。

您似乎没有遵循在上收到的任何好建议。sampleTextField.isUserInteractionEnabled=true如果我包含完整代码而不仅仅是这一部分,是否会有所帮助?其他地方可能有问题。您似乎没有遵循在上收到的任何好建议。sampleTextField.isUserInteractionEnabled=True如果我包含完整代码而不仅仅是这一部分,是否会有所帮助?其他地方可能有问题。我试着这样做,但没有成功。如果我包含更多的代码会有帮助吗?我尝试过这样做,但没有成功。如果我包含更多的代码会有帮助吗?我尝试过这样做,但没有成功。如果我加入更多的c语言会有帮助吗
奥德?我试着这么做,但没有成功。如果我包含更多的代码会有帮助吗?