2017-10-23 19 views
-2

レストウェブサービスは以下の通りです。また、このtableviewCellで写真データを使用したいと思います。WebサービスからSwift3のためのテーブルビューに画像をアップロードするには?

{ 
     "moduleitems": [ 
      { 
       "Module_id": 29, 
       "Hotel_id": 1, 
       "Module_Name": "Standart Oda", 
       "Connected_Module": 24, 
       "Photo": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACHDwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZEsRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTsAIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4JUuQLrbPipgalyxmGCV=" 
     },, 
     { 
      "Module_id": 31, 
      "Hotel_id": 1, 
      "Module_Name": "Aile Odası", 
      "Connected_Module": 24, 
      "Photo": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACHDwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAEjHnZZ3VFTXFofPvXd6oc0wAlKG3rvAANJ7k15FYZgZYCgDDjM0sSGiAhFFRJoiSFDEgNFQJFZEsRAUVLAHJAgoMRhFVCxvRtaLrqy89/Ly++Osb+2z97n77L3PWhcAkqcvl5cGSwGQyhPwgzyc6RGRUXTsAIABHmCAKQBMVka6X7B7CBDJy82FniFyAl8EAfB6WLwCcNPQM4BOB/+fpFnpfIHomAARm7M5GSwRF4g4JUuQLrbPipgalyxmGCVm= 
    } 

Swift3テーブルビュー

public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { 
     return Module?.list!.count ?? 0 
    } 
    public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell{ 
     let cell = tableView.dequeueReusableCell(withIdentifier: "myCell", for: indexPath) as! CustomCell 
     cell.InfoLabel.text = Module?.list![indexPath.row].moduleName 
     cell.InfoLabel.textColor = UIColor.white 
     cell.InfoImage.image = UIImage(named: (Module?.list![indexPath.row].photo)!) 
//   cell.InfoImage.image = Module?.list![indexPath.row].photo 
     return cell 
    } 

ためには、あなたの助けをいただき、ありがとうございます。

+0

このレストサービスの応答をどのように解析していますか?そのためのモデルを作成しましたか? – NSIceCode

答えて

0

私はこのような質問に答えました。

if let imageDataString = (Module?.list?[indexPath.row].photo), 
       let dataDecoded : Data = Data(base64Encoded: imageDataString, options: .ignoreUnknownCharacters)!, 
       let img = UIImage(data: dataDecoded) 
      { 
       cell.InfoImage.image = img 
      }else{ 
       cell.InfoImage.image = UIImage(named: "default_image") 
      } 
0

UIImage(data: data)の代わりにUIImage(named:)を使用しているようです。この

if let imageDataString = (Module?.list?[indexPath.row].photo), let dataDecoded = Data(base64Encoded: imageDataString, options: .ignoreUnknownCharacters), let img = UIImage(data: imageData){ 
    cell.InfoImage.image = img 
} else { 
    cell.InfoImage.image = // set default/placeholder image 
} 

PSが好きですか:私はあなたがJSON応答を解析され、Dataに画像データ列を変換していることを前提としています。

+0

エラー: 'String'型の値を期待される引数型 'Data'に変換できません –

+0

PSで言及しました。私は自分の答えを更新しました。今すぐチェック – Venkat

+0

は追加しないでください。私がデフォルトとして設定した画像が来ています。 –

関連する問題