2017-08-30 13 views
-1

私はJSONイメージを持っています。致命的なエラー:インデックスが範囲外です:Swift

let imagestring : String? = (myData as AnyObject).value(forKey: "Post_mid_image") as? String 

if imagestring != nil{ 
    let imageTrueString = "https://www.zdoof.com/" + imagestring! 
    self.imageStringArray.append(imageTrueString) 
    print(self.imageStringArray) 
} 

私はテーブルビューの上に置くしようとしています:

致命的なエラー:

let myImage = cell.viewWithTag(30) as! UIImageView 
let myImageString : String? = imageStringArray[indexPath.row] 

if myImageString != nil{ 
    let ImageUrl = URL.init(string: myImageString!) 

    myImage.kf.setImage(with: ImageUrl) 
} 

それはのようなエラーを示している範囲

のインデックスうち

私のコードで何が問題になっていますか?

+0

あなたはdidnの」 'numberOfRowsForSectioのコードを投稿するn: 'メソッドを使用していますが、実際には' imageStringArray'には存在しない行を表示しようとしています。 –

+0

ここで何をすればいいですか –

+0

テーブルの行数を返すコードを投稿できますか? –

答えて

0

この方法のような行法のあなたの数

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

そしてを許可すれば

if let myImage = cell.viewWithTag(30) as? UIImageView { 
    if let myImageString = imageStringArray[indexPath.row] as? String { 
     let ImageUrl = URL.init(string: myImageString!) 
     myImage.kf.setImage(with: ImageUrl) 

    } 

} 

更新キャスト強制的に回避するために、を使用: -

if indexPath.row < imageStringArray.count { 
    if let myImageString = imageStringArray[indexPath.row] as? String { 
     let ImageUrl = URL.init(string: myImageString!) 
     myImage.kf.setImage(with: ImageUrl) 

    } 
} 
+0

まだインデックスが範囲外になっています –

+0

更新された回答を試してください –

+0

私はいくつかのコメントを表示しようとしています(コメントと画像/コメントのみがあります)。それが唯一の画像 –

関連する問題