我在等待一个对象生成时遇到问题,然后我希望更新我的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'里面做的所有事情都会被调用。 –