图表未显示在表格视图中

时间:2017-06-23 07:09:30

标签: ios json swift uitableview alamofire

我有一个JSON链接,我正在使用Alamofire将数据解析到我的表视图。我有来自Json的Text,但图片没有显示。

导入UIKit 进口Alamofire 导入AlamofireImage

类ViewController:UIViewController,UITableViewDelegate,UITableViewDataSource {

Optional.ofNullable(outher)
.map(Outher::getNested)
.map((outer) -> outer.getInner() == null ? null : outer)
.map(Nested::getAnotherInner)
.isPresent();

此处称为JSON

@IBOutlet var tableView: UITableView!
var newsArray = [AnyObject]()



override func viewDidLoad() {
    super.viewDidLoad()

此处数据已加载到表格视图中

Alamofire.request("http://iccukapp.org/Api_json_format").responseJSON { response in
         let result = response.result
        if let dict = result.value as? Dictionary<String,AnyObject>{

            if let innerDict = dict["result"]{
                self.newsArray = innerDict as! [AnyObject]
                self.tableView.reloadData()



            }
        }


    }

}

这个网址是我的图片网址,但如果我查看我的JSON,图片名称前面没有网址。这是我的json链接http://iccukapp.org/Api_json_format。 我有图像资产链接。链接在这里http://iccukapp.org/assets/admin/images/ enter link description here

有没有办法在我的网址上添加外部链接?

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

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "Cell", for: indexPath) as! TableViewCell

    let title = newsArray[indexPath.row]["title"]
    cell.newsLabel.text = title as? String

}

高级感谢。

2 个答案:

答案 0 :(得分:0)

我认为您需要将图像名称附加到图像资源链接,然后使用该网址显示图像。试试这个

let imageUrl = "http://iccukapp.org/assets/admin/images/" + (self.newsArray[indexPath.row]["post_iamge"]! as! String)
let url = NSURL(string:imageUrl)
cell.imageVieww.af_setImage(withURL: url! as URL, placeholderImage: #imageLiteral(resourceName: "loadig.gif"), filter: nil, imageTransition: .crossDissolve(0.5), runImageTransitionIfCached: true, completion: nil)

答案 1 :(得分:0)

您需要使用图片字符串附加服务器网址。

let fullImageUrl = "your serverurl" + (self.newsArray[indexPath.row]["post_iamge"]! as! String)
 let url = URL(string: fullImageUrl) as URL
 cell.imageVieww.af_setImage(withURL: url!, placeholderImage: #imageLiteral(resourceName: "loadig.gif"), filter: nil, imageTransition: .crossDissolve(0.5), runImageTransitionIfCached: true, completion: nil)