我在等待一個對象生成時遇到問題,然後我希望更新我的UI。如果我運行該函數,它會立即得到索引錯誤,因爲它試圖從第一個對象獲得一些文本,當它存在dosent時......任何人都可以幫助我?等到alamofire完成請求並創建對象
func getMovieData(activeGenreLink: String){
//self.posterLoading.startAnimating()
Alamofire.request(activeGenreLink).responseJSON { response in
//print(response.request) // original URL request
//print(response.response) // HTTP URL response
//print(response.data) // server data
//print(response.result) // result of response serialization
var test = 0
self.movieArray = []
if let json = response.result.value as? Dictionary<String,AnyObject> {
if let movies = json["results"] as? [AnyObject]{
for movie in movies{
let movieObject: Movie = Movie()
let title = movie["title"] as? String
let releaseDate = movie["release_date"] as! String
let posterPath = movie["poster_path"] as! String
let overView = movie["overview"] as! String
let movieId = movie["id"] as! Int
let genre_ids = movie["genre_ids"] as! [AnyObject]
movieObject.title = title
movieObject.movieRelease = releaseDate
movieObject.posterPath = posterPath
movieObject.overView = overView
movieObject.movieId = movieId
for genre in genre_ids{//Genre ids, fix this
movieObject.movieGenre.append(genre as! Int)
}
self.movieArray.append(movieObject)
}//End of for each movie
}
}
}//End of Json request
}//End of getmoviedata
你在哪裏試這個代碼?我的意思是,在viewDidLoad裏面?或在哪裏?一旦你完成了alamofire請求,你會在''response'裏面做的所有事情都會被調用。 –