[英]Populating a Text Field with a Selected Cell from a Separate Table View Controller
我有一个需要修改的应用程序。 这是一个带有Table View Controller的基本应用程序,当用户点击加号按钮并将一些信息填充到文本字段中时,该表将被填充。 用户将输入一个名称和事件,并且通过在文本字段下创建表格视图单元格使我的生活变得更轻松,这样,当用户开始键入内容时,它会自动填充与之前输入的名称相同的名称。
我正在使用Core Data和NSFetchedResultsController。 我正在修改该应用程序,使其对用户而言更加无缝。 我没有选择文本字段时弹出键盘,而是将用户模态转到另一个Table View Controller,用户可以在其中搜索,创建或仅从Table View Cells中选择一个现有条目。
我已经出现了新的表格视图控制器,并使用NSFetchedResultsController显示了现有条目,并且运行良好。
我的问题是:如何在新的“表视图控制器”中选择一个单元并选择该单元可以做两件事:
1)退出模态视图2)使用从表视图控制器(以模态方式出现)中选择的名称填充名称文本字段(在出现新表视图的视图控制器中)。
如果表视图在同一个视图控制器中,则可以正常工作,但是我不太确定如何从另一个表视图控制器中提取该信息。
我猜想我会使用协议,但是我是一个新手,所以任何朝着正确方向甚至是简单示例代码的方向都将受到赞赏!
谢谢,
您必须实现委托协议。
想法是VC1应该符合委托(即,需要有一个过程-(void)dataAvail:(NSString *)data withViewController:(ViewController *)sender {...})。 VC1将推送VC2并设置VC2.delegate = self。
在VC2中,选择单元格后,只需调用[self.delegate dataAvail:self.yourTextField.text withViewController:self];
现在,在您的VC1中,您应该实现dataAvail ...仅获取值并关闭模态VC2。
有关如何声明协议的更多信息,请谷歌搜索“ ios委托教程”。 在为iOS编码时(例如MVC或KVC),到处都会使用委托协议。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.