2017-09-22 8 views
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に空であるが、値がアレイ内に存在します。

答えて

関連する問題