我正在开发一个电视跟踪应用程序,您可以在其中搜索电视节目并将其保存,以查看新剧集何时出现。
我的问题是,如何从searchTableViewController
和present
的单元格中获取电影数据到myShowsTableViewController
的单元格中?
答案 0 :(得分:1)
这是一个非常广泛的问题,通常不适合用于StackOverflow,后者适用于更多的“细粒度问题”。
也就是说,我建议创建一个名为DataManager
或类似的类。在进行API调用方面,我建议使用Alamofire
之类的方法进行API调用。最后,我建议阅读Codable
protocol,以解码API发送回的JSON。解码JSON时,您需要将结构存储在视图控制器可以看到的位置。
要使用CocoaPods,请here's a good primer(将其用于Alamofire)。
您的数据管理器将如下所示(为简单起见,我将使用NSObject
,但您可以只创建自己的类)
struct Shows: Codable {
// Whatever the API sends back, you've got to map it here
}
class DataManager: NSObject {
var shows: [Shows] = [] // empty array of shows to start
func methodToGetAPIResponse() {
// Alamofire call & JSON decoding here
// Once you get a valid response, shows = try JSONDecoder().decode...
}
}
您可以在视图控制器类中为DataManager
这样的事情:
let dataManager = DataManager()
然后,在UITableViewDataSource方法中,numberOfRowsAtIndexPath
将是return dataManager.shows.count
和cellForRowAtIndexPath
,您将拥有一个对象来填充标签,如下所示:
let show = dataManager.shows[indexPath.row]
无论如何,这应该足以让您入门。祝好运!将来尝试对您的问题进行更详尽的介绍。