我使用此视频作为我在下面的代码中所做的示例。 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中提取的数据。我的问题是,我可以使用按钮将标签中的数据推送(或显示)到另一个视图控制器吗?有点像购物车,我想在行中使用一个按钮将标签添加到另一个视图控制器,所以我可以在那里查看(作为另一个标签或其他方法)。
我知道可能会有关于将数据传递给另一个视图控制器的类似帖子,但我认为我可以使用(或者至少找不到)与此类似的任何内容。
答案 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)
}
希望它有所帮助。