複数のエンドポイントから取得したJSONの配列を1つのテーブルビューに表示したい
現在Swift 3でRSSリーダーを開発をしているのですが、一つのURLからの表示ができたのですが複数のURLで表示させようとするとその配列の中の一つしか表示されません。
JSON変換はGoogleのAPIを使っています。
コードはこちらです。
class MatomeVieController: UIViewController , UITableViewDelegate, UITableViewDataSource {
var NewDataArray = NSArray()
var myTableView : UITableView!
var matomeURL = "http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=表示させたいURL&num=100"
var URLstring : [String] = [
"http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=表示させたいUR&num=100",
"http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=表示させたいUR&num=100",
"http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=表示させたいUR&num=100"
]
var isLoading : Bool = false
override func viewDidLoad() {
super.viewDidLoad()
...
GetURLSRSS()
...
}
func GetURLSRSS() {
for URLstrings in URLstring {
if let requestURL2 = Foundation.URL(string: URLstrings) {
Alamofire.request(requestURL2, method: .get ,parameters: nil).responseJSON {
response in
if let json = response.result.value {
let jsonDic = json as! NSDictionary
let responseData = jsonDic["responseData"] as! NSDictionary
let feed = responseData["feed"] as! NSDictionary
self.NewDataArray = feed["entries"] as! NSArray
}
self.myTableView.reloadData()
}
}
}
}
func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 80
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let NewDic = NewDataArray[indexPath.row] as! NSDictionary
let NewURL = NewDic["link"] as! String
url = Foundation.URL(string: NewURL)
let Deteilwebview = UINavigationController(rootViewController: WebViewController())
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return NewDataArray.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
// 再利用するCellを取得する.
let cell = tableView.dequeueReusableCell(withIdentifier: "ItemCell", for: indexPath) as! ItemCell
let Newdic = NewDataArray[indexPath.row] as! NSDictionary
let title = Newdic["title"] as? String
let publishedDate = Newdic["publishedDate"] as? String
let links = Newdic["link"] as! String
let timedate = self.convertDateFormat(publishedDate!)
cell.title.text = title
cell.author.text = "サイト名"
cell.time.text = timedate
cell.link = links
return cell
}
}
複数のサイトを一つのViewで表示するにはどのように表現したら良いでしょうか?