我是iOS的新手,并从一些教程开始。但是当我尝试在tableview
中显示内容时,它没有显示。我做的就像他们在那个教程中做的那样。但是我仍然无法在我的桌面视图中显示我的背景。
这是我的tutoial链接:My link
这是我的代码:
import UIKit
import Alamofire
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
@IBOutlet weak var tableView: UITableView!
var nameArray = [AnyObject]()
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
Alamofire.request("http://thecodeeasy.com/test/swiftjson.json").responseJSON { response in
let result = response.result
if let dict = result.value as? Dictionary<String,AnyObject>{
if let mainDict = dict["actors"] {
self.nameArray = mainDict as! [AnyObject]
self.tableView.reloadData()
}
}
}
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int
{
return nameArray.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath as IndexPath) as? CustomTableViewCell
let title = nameArray[indexPath.row]["title"]
cell?.ContentName.text = title as? String
return cell!
}
}
答案 0 :(得分:1)
您有三种可能无法获取数据。 首先,您的app数据源设置不正确。 请检查图像
其次,将您的API代码粘贴到viewDidAppear中并检查它是否正常工作
=============重要============
第三,检查您的info.plist是否包含以下代码。 因为无论何时进行互联网呼叫,都应将此代码放入info.plist文件中。
右键单击info.plist并打开源代码
粘贴以下代码
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
尝试运行该应用。 让我知道它是否适合你。
请检查代码click here
的链接谢谢
Abhishek Sharma
答案 1 :(得分:0)
在viewDidLoad
的顶部试试self.tableView.delegate = self
self.tableView.dataSource = self
答案 2 :(得分:0)
我可以看到你在视图控制器中使用了tableview
。您应该将此tableview
的委托和数据源设置为self
。
在视图控制器中写下这两行:
self.tableView.delegate = self
self.tableView.datasource = self
你也可以用XIB做到这一点。
如果您已经完成了该操作或无法正常工作,请尝试打印self.nameArray
并检查是否有预期的数据。