Ios 如何在swift中使用视图控制器创建表视图
我可以制作一个带有表视图的应用程序,但我需要单元格来重定向到youtube视频。当我按下一个单元格时,我想让它显示youtube视频或将我发送到另一个视图控制器。请帮帮我Ios 如何在swift中使用视图控制器创建表视图,ios,xcode,swift,tableview,Ios,Xcode,Swift,Tableview,我可以制作一个带有表视图的应用程序,但我需要单元格来重定向到youtube视频。当我按下一个单元格时,我想让它显示youtube视频或将我发送到另一个视图控制器。请帮帮我 class ViewController: UITableViewController { var tricks = [Trick]() override func viewDidLoad() { super.viewDidLoad() // Do any additional setup afte
class ViewController: UITableViewController {
var tricks = [Trick]()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.tricks = [Trick(name: "Ollie" ), Trick(name: "Kickflip"), Trick(name: "Heelflip"), Trick(name: "Varial Kickflip"), Trick(name: "Varial Heelflip"), Trick(name: "TreeFlip")]
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) ->Int {
return self.tricks.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = self.tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath)as! UITableViewCell
var trick : Trick
trick = tricks[indexPath.row]
cell.textLabel?.text = trick.name
return cell
}
}尝试实现did select单元格的委托方法
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
let trick = tricks[indexPath.row]
//Now you have you selected trick so push in a your video playing view controller with the url from your trick object
}
这是一个关于在你的应用程序中播放YouTube视频的线程
我想这对你有帮助
func selectRow() -> Tricks? {
let selectedRow = self.tableView.selectedRow;
if selectedRow > 0 && selectedRow < self.tricks.count {
selectedRow.description
return self.tricks[selectedRow]
}
return nil
}
extension MasterViewController: NSTableViewDelegate {
func tableViewSelectionDidChange(notification: NSNotification) {
updateDetailInfo(selectedRow())
}
}
func selectRow()->技巧?{
让selectedRow=self.tableView.selectedRow;
如果selectedRow>0&&selectedRow
我想您应该制作另一个包含web视图的视图控制器。然后,每当您在表中选择一个单元格时,请转到该单元格并传递一个字符串,如视频的URL
var tricks = ["Ollie", "Kickflip", "Heelflip", "Varial Kickflip", "Varial Heelflip"]
var selectedRow = 0
//SELECT THE ROW & Call THE SEGUE
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
selectedRow = indexPath.row
self.performSegueWithIdentifier("myVideoSegue", sender: self)
}
//PASS THE DATE TO THE NEXT VIEW CONTROLLER
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
if (segue.identifier == "myVideoSegue") {
let nextVC = segue.destinationViewController as ViewController;
nextVC.passedTrickName = tricks[selectedRow]
}
}
另见:
另外,将情节提要上的序列从一个视图控制器连接到下一个视图控制器。如果从TableView连接,则在设置要传递的数据之前,它将继续。这就是为什么您需要使用“performsguewithidentifier”以编程方式调用segue。