2017-06-07 79 views
2

我在Swift中使用了TMDB中的API。我找到了一個wrapper。安裝它與Cocoapods,現在我正在與功能摔跤。我認爲自述文件已過時。所以用這個功能我想檢索一個流派列表。Swift函數在TMDB封裝器API中不明確

例如,在框架的功能:

///Get the list of tv or movie genres. 
    open class func genres(_ api_key: String!, listType: GenresListType, language: String?, completion: @escaping (_ clientReturn: ClientReturn, _ data: [GenresMDB]?) ->()) ->(){ 
    Client.Genres(api_key, listType: listType.rawValue, language: language, genreId: 0, page: nil, include_all_movies: nil, include_adult: nil, movieList: false){ 
     apiReturn in 
     if(apiReturn.error == nil){ 
     completion(apiReturn, GenresMDB.initialize(json: apiReturn.json!["genres"])) 
     }else{ 
     completion(apiReturn, nil) 
     } 
    } 
    } 

在自述文件中的函數被調用像這樣(得到電影或電視類型的列表):

GenresMDB.genres(apikey, listType: .tv, language: "en"){ 
    apiReturn, genres in 
    if let genres = genres{ 
    genres.forEach{ 
     print($0.name) 
    } 
    } 
} 

但我認爲,它過時了。

所以現在我稱之爲一個viewController.swift功能是這樣的:

GenresMDB.genres(apiKey, listType: .movie, language: "en", completion: (ClientReturn, [GenresMDB]?) ->()) { 
} 

我想流派的電影語言與英語列表。但我仍然不明白完成處理程序會做什麼。或者我如何保存函數返回的數據(我認爲是JSON格式)。有人理解這個功能並向我解釋嗎?

回答