UITableView Cell - 编辑?

时间:2013-07-11 10:33:08

标签: objective-c uitableview

是否可以使用 UITableView 将值输入数据库的字段。

例如,如果我要将UITableView指向数据库中的某个字段,并且我想在数据库中输入新条目 - 点击UITableView Cell,然后允许键盘输入到单元格中,最终结束成为数据库中的新记录??

2 个答案:

答案 0 :(得分:1)

这是可能的,但如果可能的话并不意味着你应该这样做

你可能会问为什么?

嘛!你试图将数据从视图直接输入数据库,这是一个非常糟糕的做法。它有很多原因是坏的,主要是效率和安全原因。 您应该考虑使用MVC pattern

既然完全有可能,我将解释如何做到这一点的想法,并以带有实际代码示例的链接结束。

tableView:cellForRowAtIndexPath: 添加带有标记的TextField(以便将来获取引用)并将其添加到单元格的contentView并隐藏它。

现在tableView:didSelectRowAtIndexPath:将单元格editing属性设为YES

然后,在tableView:willBeginEditingRowAtIndexPath: 使用viewWithTag:方法获取contentview中textfield的引用,并隐藏textLabela并取消隐藏文本字段。

在textfield的委托textFieldDidEndEditing:中,将单元格的编辑属性设置为no(是的,您需要保留引用)取消隐藏文本标签并隐藏文本字段。

tableView:didEndEditingRowAtIndexPath:写入方法中,将对数据库进行更改。

以下链接列表将为您提供代码示例:

Having a UITextField in a UITableViewCell

Accessing UITextField in a custom UITableViewCell

iOS Database Tutorial

没有任何关于你的要求的例子'因为它做得不好。

答案 1 :(得分:0)

是的,可能......

您可以使用委托方法将单元格文本字段中的数据传输到父视图控制器,然后将数据保存到数据库中。