gpt4 book ai didi

ios - becomeFirstResponder() 不起作用

转载 作者:行者123 更新时间:2023-11-29 01:21:12 29 4
gpt4 key购买 nike

我目前正在尝试创建一个类似于 Apple Reminders 的待办事项应用。现在,当我通过单击 UIButton 添加新任务时,将创建一个包含 UITextfield 的新单元格并将其指定为第一响应者。但是,当我这样做时,键盘会按预期显示,但没有光标,也无法编辑。当我再次单击文本字段时,我可以按预期进行编辑。

如有任何帮助,我们将不胜感激。

@IBAction func addTask(sender: UIBarButtonItem)
{

// Add a new task
let newIndexPath = NSIndexPath(forRow: tasks.count, inSection: 0)
let task = Task(name: "")!
tasks.append(task)
tableView.insertRowsAtIndexPaths([newIndexPath], withRowAnimation: .Bottom)
let cellIdentifier = "TaskTableViewCell"
let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: newIndexPath) as! TaskTableViewCell


let db_Task = PFObject(className: "Task")
db_Task["TaskName"] = ""
db_Task["Completed"] = false
db_Task["group"] = getGroupId()
db_Task.saveInBackgroundWithBlock
{(success: Bool, error: NSError?) -> Void in
print("Object has been saved.")
}
cell.nameLabel.becomeFirstResponder()
}

最佳答案

tableView.insertRowsAtIndexPaths([newIndexPath], withRowAnimation: .Bottom)
let cellIdentifier = "TaskTableViewCell"
let cell = tableView.dequeueReusableCellWithIdentifier(cellIdentifier, forIndexPath: newIndexPath) as! TaskTableViewCell

您无法通过“出队”方法获取插入的单元格。切勿在 cellForIndexPath 之外调用此方法。插入后你应该这样做:

let cell = tableView.cellForIndexPath(indexPath)

关于ios - becomeFirstResponder() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34582790/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com