2017-06-12 6 views
0

「ViewControllerからUIImageViewへのimageViewコンセントが無効です。コンセントを繰り返しコンテンツに接続できません。」私のストーリーボードのtableViewCellにimageViewを追加しました。この問題を解決するにはどうすればよいですか?アウトレットは繰り返しコンテンツに接続できませんUIImageViewエラー?

@IBOutlet weak var imageView: UIImageView! 

var posts = [postStruct]() 




override func viewDidLoad() { 
    super.viewDidLoad() 




    let ref = Database.database().reference().child("Posts") 

    ref.observeSingleEvent(of: .value, with: { snapshot in 

     print(snapshot.childrenCount) 

     for rest in snapshot.children.allObjects as! [DataSnapshot] { 

      guard let value = rest.value as? Dictionary<String,Any> else { continue } 

      guard let title = value["Title"] as? String else { continue } 
      guard let downloadURL = value["Download URL"] as? String else { continue } 
      self.imageView.sd_setImage(with: URL(string: downloadURL), placeholderImage: UIImage(named: "placeholder.png")) 
      let post = postStruct(title: title) 

      self.posts.append(post) 


     } 

     self.posts = self.posts.reversed(); self.tableView.reloadData() 

    }) 




} 




override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
    return posts.count 
} 

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    let cell = tableView.dequeueReusableCell(withIdentifier: "cell") 

    let label1 = cell?.viewWithTag(1) as! UILabel 
    label1.text = posts[indexPath.row].title 
    return cell! 




} 

}

答えて

4

あなたは、セル内の繰り返しエレメントにコンセントを描くことはできません。 したがって、2つのオプションがあります: - セルのクラスのいずれかを作成し、次にそのクラスでコンセントを作成することができます。クラスを使用すると、いいえの場合に役立ちます何らかの理由で画像が見つかりました。

したがって、常にセルのクラスを作成し、その値を要素に設定することをお勧めします。

あるいは、他のオプション簡単な修正でタグ使用されています - そしてアイデンティティインスペクタからタグにアクセスして、あなたのcellForRowAt

に続いて350 を言うことにいくつかのユニークな整数値を設定し、 UIImageViewに クリックを
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { 
    let cell = tableView.dequeueReusableCell(withIdentifier: "cell") 

    let yourImageView = cell?.viewWithTag(350) as! UIImageView 
    //Set image to ur yourImageView 
    return cell! 
} 
+0

この回答は受け入れる必要があります.. – Dhiru

関連する問題