0
モデルクラスを使用して配列からデータを取得していませんが、配列にデータがあります。私はモデルクラスを使う正しい方法を知らない。多分私が実装した方法は間違っています。ご案内ください。コードは以下である:モデルクラスを持つ配列からデータを取り出す方法
// . ViewController class
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
// let cell: VisitorsCell = tableView.dequeueReusableCell(withIdentifier: "VisitorsCell", for: indexPath) as! VisitorsCell
let cell:RecentVisitorsCell = self.tblView.dequeueReusableCell(withIdentifier: "VisitorsCell") as! VisitorsCell
**let ds:VisitorDs = recentVisitorsArray[indexPath.row] as! VisitorsDs // . crash here.//**
// let ds = VisitorsDs()
cell.imgProfile.image = UIImage(named: ds.profile)
cell.lblAge.text = ds.age as String
return cell
}
//MARK: Delegatres Server Communication
func didFinishServerCommunicationWithSuccess(_ response:ServerResponse){
print("api response: ", response.infoResponse?["data"] as! [AnyObject])
//VisitorsArray = response.infoResponse?["data"] as! [AnyObject] as NSArray
//if response.operation == "SERVICE_SOURCE" {
if let dictResult = response.infoResponse as? NSDictionary {
if let arrResult = dictResult.object(forKey: "data") as? NSArray
{
for result in arrResult {
let Visitors = VisitorsDs()
recentVisitors.initWithVal(dict: result as! NSDictionary)
VisitorsArray.add(VisitorsDs.self)
}
print("array received: ", VisitorsArray)
self.tblView.reloadData()
}
}
self.tblView.reloadData()
}
// Model class
クラスVisitorsDs:NSObjectの{
var profile:String = ""
var name:String = ""
/*
//MARK: Initialization
init(profile:String,name:String,age:String,parentsName:String,mobile:String,purpose:String,date:String,time:String,clinic:String) {
self.profile = profile
self.name = name
}
*/
func initWithVal(dict: NSDictionary) {
// print(dict)
if let latestValue = dict["image_path"] as? String {
self.profile = latestValue
}
if let latestValue = dict["first_name"] as? String {
self.name = latestValue
}
}
}
Error: Could not cast value of type 'IPAN.VisitorsDs' (0x10d809f58) to 'IPAN.VisitorsDs' (0x10d806eb0).
案内してください、値のUITableViewに空であるが、値がアレイ内に存在します。