Swifyjson 与 tableview
Posted
技术标签:
【中文标题】Swifyjson 与 tableview【英文标题】:Swifyjson with tableview 【发布时间】:2016-03-19 23:51:30 【问题描述】:我正在尝试使用 swiftyjson 在 url 上获取的 json 数据填充我的 tableview。我面临的问题是,我正在理解数组中的城市,但是当我在 table view 上使用它时,数据不显示。我该如何解决?(您可以通过单击 url 检查我的 json 的数据结构)。
import UIKit
import SwiftyJSON
import Alamofire
class ViewController: UIViewController , UITableViewDelegate ,UITableViewDataSource
@IBOutlet var tableview: UITableView!
var data = [String]()
var numberofRows = 0
override func viewDidLoad()
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
Alamofire.request(.GET, "http://android.goidx.com/search")
.responseJSON ( response) -> Void in
if let value = response.result.value
let json = JSON(value)
for (index,json):(String, JSON) in json
//Do something you want
self.numberofRows = json["city"].count
let city = json["city"].string! as String
self.data.append(city)
print(json["city"].stringValue)
override func didReceiveMemoryWarning()
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
func numberOfSectionsInTableView(tableView: UITableView) -> Int
return 1
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int
return numberofRows
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
let cell = tableView.dequeueReusableCellWithIdentifier("Cell" , forIndexPath: indexPath) as UITableViewCell
if data.count != 0
cell.textLabel?.text = data[indexPath.row]
return cell
【问题讨论】:
【参考方案1】:创建城市数组后,需要重新加载表格视图以刷新内容
tableView.reloadData()
同时改变你的数据源,numberOfRowsInSection 方法返回
self.data.count
我注意到返回的 json 中的城市键没有映射到数组。
【讨论】:
从 json 看,city 不是一个数组,因此计数不正确。更改您的 numberOfRowsInSection 以返回 self.data.count 。 是的!我确实将它更改为 self.data.count 但它没有显示在表格视图中。这就是我打印它时数据数组的输出方式,它给了我多个数组。[“其他县 - 不在美国”] [ “其他县 - 不在美国”、“宅基地”] [“其他县 - 不在美国”、“宅基地”、“多拉”] [“其他县 - 不在美国”、“宅基地”、“多拉”、“哈伦代尔"] 还确保 tableView.dataSource = self 是的,我已经将 tableview 连接到 viewcontroller 工作感谢!这就是我必须做的 json["city"].stringValue以上是关于Swifyjson 与 tableview的主要内容,如果未能解决你的问题,请参考以下文章