当我转到HomeViewController时,屏幕将变成全黑。我实际上想获取用户以将其放入TableViewCells。我将Firebase用作数据库,将Swift用作语言。帮我完成这个。
import UIKit
import Firebase
class HomeViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var tableView: UITableView!
var users = [User]()
override func viewDidLoad() {
super.viewDidLoad()
fetchUser()
}
func fetchUser() {
FIRDatabase.database().reference().child("users").observe(.childAdded, with: { (snapshot) in
if let dictionary = snapshot.value as? [String: AnyObject] {
let user = User(dictionary: dictionary)
self.users.append(user)
//this will crash because of background thread, so lets use dispatch_async to fix
DispatchQueue.main.async(execute: {
self.tableView.reloadData()
})
}
}, withCancel: nil)
}
func handleCancel() {
dismiss(animated: true, completion: nil)
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return users.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "resultCell", for: indexPath)
let user = users[indexPath.row]
cell.textLabel?.text = user.name
cell.detailTextLabel?.text = user.email
return cell
}
}
class UserCell: UITableViewCell {
override init(style: UITableViewCellStyle, reuseIdentifier: String?) {
super.init(style: .subtitle, reuseIdentifier: reuseIdentifier)
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
在LoginButton下通过SWRevealViewController呈现Home View Controller
let vc : SWRevealViewController = self.storyboard?.instantiateViewController(withIdentifier: "SWRevealViewController") as! SWRevealViewController
self.present(vc, animated: true, completion: nil)
建筑
最佳答案
问题
您可能未设置导航控制器的RootViewController。
解
在SWRevealViewController
和NavigationController
之间选择设置。在属性检查器中,将segue标识符设置为“ sw_front”。这是指示前视图控制器转换的默认标识符。
对于SWRevealViewController
和侧边栏视图控制器之间的segue,将segue标识符设置为“ sw_rear”。该标识符告诉SWRevealViewController
控制器代表后视图
关于ios - View Controller显示黑屏,而不是从Firebase数据库Swift iOS中获取用户,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44366472/