用选定的 TableViewCell 填充文本字段?

Fill a textField with a selected TableViewCell?

在我的初始视图中,有一个空白的 textField(上面有一个不可见的按钮),当您单击它时会转到 TableView。我想将我的 TableViewCell 选择中的文本数据发送到原始视图中的空白 textField

我制作了一个 View2.swift 文件,它是我原来 View 的副本。我试图编辑那里的源代码,通过从 TableViewindexPath 发送 .text 来推送 textData

This video 展示了如何将数据从第一个视图发送到第二个视图,但我正在尝试将数据从我的第二个视图 (TableView) 发送回我的第一个视图 (View).

这是我的代码:

ViewController.swift

 import UIKit

 class ViewController: UITableViewController {

     override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
         var DestViewController : View2 = segue.destinationViewController as! View2

        DestViewController.formulaSelectionText = ViewController.
     }
 }

View2.swift:

import Foundation
import UIKit

class View2: UIViewController {


    override func viewDidLoad(){
        formulaSelection.text = indexPathForCell(Cell: UITableView)
    }
}

我认为最好只更新初始视图中的值。我正在考虑 UITextFieldDelegate?

很容易将UITableViewCell选择的值传回控制器。只需选择一个单元格,更新先前控制器中文本字段的值并弹出 controller/dismiss 如果您使用的是导航控制器/模态控制器。

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

        //get last controller in hierarchy
        let viewControllers: [UIViewController] = self.navigationController!.viewControllers as [UIViewController];
        var prevController : PrevViewController = viewControllers[viewControllers.count - 1] as PrevViewController;
        prevController.textfield.text = dataSource[indexPath.row]; //update textfield here
        self.navigationController!.popViewControllerAnimated(true);

    }

希望对您有所帮助!