我试图将导航栏添加到Main.storyboard中的表格视图。 在Main.storyboard中,没有任何问题导航栏在以上的表格视图中出现。表视图导航栏正在关闭
此外,数据加载之前没有问题。导航栏可见以上表格视图的一部分。
但是,当所有的数据被加载时,导航栏将会下来。
我想保持导航栏的tableview的上面部分。 我错在哪里?如何解决这个问题呢?
我认为,FirstViewController.swift并不重要,但我共享所有代码。
FirstViewController.swift
import UIKit
class FirstViewController: UIViewController,UITableViewDataSource,UITableViewDelegate {
@IBOutlet weak var tableView: UITableView!
var tbCount = 0
var myMp3s = [Mp3]()
override func viewDidLoad() {
super.viewDidLoad()
tableView.dataSource = self
tableView.delegate = self
let url = URL(string: "http://example.php")
URLSession.shared.dataTask(with:url!, completionHandler: {(data, response, error) in
guard let data = data, error == nil else { return }
do {
let json = try JSONSerialization.jsonObject(with: data, options: .allowFragments) as! [String:Any]
let posts = json["server_response"] as? [[String: Any]] ?? []
for i in posts {
print(i["id"]!)
let mp3 = Mp3(id: i["id"] as! String, category: i["kategori"] as! String)
self.myMp3s.append(mp3)
}
self.tableView.reloadData()
print("counte", self.myMp3s.count)
} catch let error as NSError {
print(error)
}
}).resume()
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return myMp3s.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = UITableViewCell()
cell.textLabel?.textAlignment = .center
cell.textLabel?.text = self.myMp3s[indexPath.row].category
return cell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print(myMp3s[indexPath.row].category)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
尝试禁用NavigationController的navigationBar的**半透明**属性。 – KKRocks