2016-04-13 10 views
0

テーブルビューからのビューへの移動に問題があります。テーブルビューは自動的にコンテンツをリロードします

問題を説明するために、私は、ユーザーがセルをタップすると新しいビュー(objectConsult)がモーダルセグを使って呼び出されると、いくつかのユーザーオブジェクトがロードされるテーブルビューを含むビューを持っています。

このビューでは、ユーザーは自分のオブジェクトに関するすべての情報を見つけることができます。モーダルセグレットにリンクされた戻るボタンをタップすると、myObjectsに戻ります。

私の問題は、objectConsulから戻るボタンをタップするたびにテーブルビューを再読み込みすることです。私はすでに目的のCでリロードをブロックすることに成功しましたが、迅速に解決するために何をしなければならないか分かりません。問題。

override func viewDidAppear(animated: Bool) { 
      tableView.reloadData() 
    } 


func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { 

    let cell:CustomCell = self.tableView.dequeueReusableCellWithIdentifier("Cell") as! CustomCell 
    cell.picture.frame = CGRectMake(5,0,120,103) 

    cell.title.text = repos[indexPath.row].title 

     let i = settings.ImagesCachedArray.indexOf({$0 == repos[indexPath.row].idobjet!})    
     let myImageName = "\(settings.ImagesCachedArray[i!]).png"    
     let imagePath = fileInDocumentsDirectory(myImageName) 
     if let _ = self.loadImageFromPath(imagePath) { 
      cell.picture.image = self.loadImageFromPath(imagePath) 
     } 
     else { 
      let imgzeroresult = UIImage(contentsOfFile: NSBundle.mainBundle().pathForResource("noimage", ofType: "png")!) 
      cell.picture.image = imgzeroresult 
     } 
} 

    func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
    performSegueWithIdentifier("mysegue", sender: self.view) 
} 

助けていただければ幸いです。

答えて

2

問題がある:

override func viewDidAppear(animated: Bool) { 
     tableView.reloadData() 
} 

変更のviewDidLoad

override func viewDidLoad() { 
     tableView.reloadData() 
} 
+0

ため、この方法でそれは動作しますが、あなたがしてください説明できますか? – f1rstsurf

+1

@ f1rstsurf 'viewDidAppear'は、名前が示唆するように、ビューが画面に現れるたびに呼び出されます。これは、戻るボタンを押しても呼び出されることを意味します。一方、 'viewDidLoad'は、ロードされたときと同様に、初めてビューが表示されたときにのみ呼び出されます。 – kabiroberai

+0

大きな説明、両方のあなたに感謝! – f1rstsurf