ios - 使用 plist 在 TableView 之间传递数据

标签 ios swift uitableview plist

如何在两个 TableView 之间传递数据?我有包含 2 个数组的 poet.plist:namebiography。当我运行应用程序时,第二个 TableView 是空的。第一个 TableView 应列出诗人,而第二个 TableView 应列出诗人的作品。

头等舱

class Poets
{
    var poetName:String = ""
    var poetImage:String = ""
    var books=[Works]()
}

第二类:

class Works {

    var nameWork = ""
    var workPoet = ""

    init(nameWork: String, workPoet: String) {
        self.nameWork = nameWork
        self.workPoet = workPoet
    }
}

第一个 View Controller

let worksArray = booksDict[poet.poetName as String] as! NSArray
for work in worksArray {
    let dictionaryFromArray = work as! NSDictionary
    let workObject = Works(nameWork: dictionaryFromArray["nameWork"] as! String, workPoet: dictionaryFromArray["work"] as! String)
    poet.books.append(workObject)
}

如何在带有诗人名字的 UITableViewController 和带有诗人作品的 UITableViewController 之间进行转换?

最佳答案

在第一个 View Controller 中

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {

    // ShowPoetWorks is your segue identifier which you can set in storyboard
    if segue.identifier == "ShowPoetWorks" {

        var secondVC = segue.destinationViewController as? SecondViewController
        secondVC.poetName = poetName
    }
}

在第二个 View Controller 中

  • 定义 2 个字段:poetNameworkCount
  • 覆盖函数 `tableView:numberOfRowsInSection

    override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
    
        return workCount  
    }
    
  • 在viewDidLoad中,根据poetName加载诗人作品,并调用tableView.reloadData()

关于ios - 使用 plist 在 TableView 之间传递数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33018374/

相关文章:

ios - 使用 Web 服务时 Swift 中的错误代码=-1005 "The network connection was lost."

ios - 标签的内容正在堆栈 View 中被裁剪

swift - Core Graphics 不绘制某些线条

cocoa-touch - UITableViewCell 子类,在代码中绘制,动画中的删除按钮

ios - Storyboard上的自动排列 View

ios - 如何知道哪个对象发送了通知

ios - 为什么 IBAction 和 IBOutlet 是不可见的

objective-c - 在 iOS 的 UITextView 中不显示笑脸(表情符号)?

ios - 清除搜索结果后,Swift Tableview 搜索结果单元格选择复选标记不保存

ios - 搜索栏显示错误/混合的单元格结果