将标签数据从tableview传递到另一个视图控制器

时间:2016-04-15 14:17:53

标签: php ios mysql swift

我使用此视频作为我在下面的代码中所做的示例。 Swift To MYSQL using PHP我将PHP中的数据导入tableview时使用了视频的后半部分。我能够让tableview在表格视图单元格行中成功显示php中的项目。

import Foundation
import UIKit
import WebKit

class BreakfastGetController: UIViewController, UITableViewDelegate, UITableViewDataSource {

@IBOutlet var tableView: UITableView!


var values:NSArray = []

override func viewDidLoad() {
    super.viewDidLoad()
    get();

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}


func get(){
    let url = NSURL(string: "http://cgi.soic.indiana.edu/~team20/BreakfastGetInfo.php")
    let data = NSData(contentsOfURL: url!)
    values = try! NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.MutableContainers) as! NSArray
    tableView.reloadData()
}

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    return values.count;
}
//call the specific row and displying in the cell row
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! SpecialCell
    let maindata = values[indexPath.row]
    cell.name.text = maindata["name"] as? String
    return cell;

}

}

每个单元格行都有一个标签,该标签显示我从php中提取的数据。我的问题是,我可以使用按钮将标签中的数据推送(或显示)到另一个视图控制器吗?有点像购物车,我想在行中使用一个按钮将标签添加到另一个视图控制器,所以我可以在那里查看(作为另一个标签或其他方法)。

我知道可能会有关于将数据传递给另一个视图控制器的类似帖子,但我认为我可以使用(或者至少找不到)与此类似的任何内容。

1 个答案:

答案 0 :(得分:3)

是。可能的。

您希望将数据从Tableview传递到Next View Controller。正确?

编写Tableview委派方法

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

    var value = contentArray.objectAtIndex(indexPath.row)

    var secondVC : SecondViewController
        = self.storyboard ?.instantiateViewControllerWithIdentifier(identifier: "SecondViewController")

    secondVC.contentValue = value as? String

    self.navigationController ?.pushViewController(secondVC, animated: YES)

}

希望它有所帮助。