ios - 我的应用程序崩溃了,并显示该类不符合使用swift编写的key tableView的键值编码

标签 ios swift uitableview firebase

该函数从另一个文件users.swift获取变量。
追加数据

func getData(salval:String )
{   self.tabArray.removeAll()
    ref = Database.database().reference()
    let userID = Auth.auth().currentUser!.uid
    if salval != "" {
        ref?.child("Schedule").child("Codaphic").child(salval).child(userID).observe(.childAdded, with: { (snapshot)
            in
            if  let dictionary = snapshot.value as? [String : AnyObject]
            {
                let user = users()
                user.setValuesForKeys(dictionary)
                self.tabArray.append(user)
                self.tableView1.reloadData()
            }
          
            
        })
    }
    
}
这是users.swift
import UIKit
class users : NSObject
{   
 var cname : String?
var _logi: String?
var key : String?
var wname : String?
var address : String?
var endtime : String?
var _leti : String?
var starttime : String?
var date : String?
var groupname : String?
var month : String?

}
此文件是使用NSObject继承的
但是当项目调试其显示错误时

最佳答案

如果您使用的是user.setValuesForKeys(dictionary),则意味着您的User类中的变量必须与数据库中的名称匹配。最安全的方法是删除user.setValuesForKeys(dictionary)并使用:

let user = User()
user.cname = dictionary["cname"] as? String
user.date = dictionary["data"] as? String

等等...

关于ios - 我的应用程序崩溃了,并显示该类不符合使用swift编写的key tableView的键值编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48240569/

相关文章:

ios - 如何在闭包内设置 Inout 参数

ios - UICollectionView 功能问题

ios - 单击 uitableviewcell 时使用 Actionsheet 而不是 segue

ios - 更改tableview中所有单元格按钮的颜色

ios - 在 UIBarButtonItem 上以编程方式设置可访问性标识符

ios - 缩小和放大后 MapOverlay 闪烁-iOS

objective-c - 将请求 URL 实现到使用 WordNik API 的导入的 cocapod

ios - AVAudioEngine() 播放不工作

iphone - 如何以编程方式强制 EGORefreshTableHeaderView 更新

ios - Tableview标题单元格在swift中使用相同的cardView扩展?