这里是Swift和xcode的新手。我正在尝试使用swift中的tableview和tableview单元格制作一个简单的待办事项计划程序。
我想知道是否有任何方法可以让用户点击任何文本字段时,要响应的文本字段应该只是下一个可用的文本字段。
例如,在这张照片中,如果用户点击第10个文本字段,则应该打开的文本字段应该只是第4个,即“作业”单元格之后的文本字段。
这件事情很简单吗?或者我在这里过头了?
赞赏任何其他提示!
答案 0 :(得分:1)
您可以尝试使用UITableView
的{{1}}。您将能够知道选定的行didSelectRowAtIndexPath
。我假设您有一个数据作为数组,用于加载indexPath
的数据。在tableView
方法中,您只需检查所选行的didSelectRowAtIndexPath
和数据计数即可。如果匹配则不执行任何操作,如果不匹配,则可以使用indexPath
选择正确的单元格 - 根据您的示例,第4个 - 。我希望它会有所帮助。
答案 1 :(得分:0)
如果仅处理textFields
,您可以使用textFieldShouldReturn
中的UITextFieldDelegate
func textFieldShouldReturn(textField: UITextField) -> Bool {
if textField != lastTextField{
self.lastTextField.becomeFirstResponder()
}
return true
}
或包含自定义单元格的表格:
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if indexPath.row != lastItemRow + 1{
let cellToFocus = tableView.cellForRowAtIndexPath(indexPath)
cellToFocus.textField.becomeFirstResponder()
}
}