也许这是一个非常简单的任务,但我是新手。如何在UILable中显示json数组?

时间:2018-06-30 06:45:37

标签: arrays json uilabel swift4.1 xcode9.3

这是我的Api链接look like this

[{"name":"KASHIF RAHAT ALI","id":67922,"gender":"Male","regNo":"21388-S","place":"KARACHI CITY","dept":"MEDICAL","fName":"RAHAT ALI QURESHI"},{"name":"SABOOHI","id":139148,"gender":"Female","regNo":"21388-P","place":"LAHORE","dept":"MEDICAL","fName":"MUHAMMAD SHAFI"},{"name":"SANA IKRAM","id":150168,"gender":"Female","regNo":"21388-N","place":"PESHAWAR","dept":"MEDICAL","fName":"IKRAMULLAH"}]

我要过滤上面的数组,并以4种不同的UILable格式打印数据。

  

姓名,性别,手机号码,PMDC号码和区域

下面的代码可以像这样在控制台中打印数据。

[jsonparsing_Example.Course(name: "KASHIF RAHAT ALI"), jsonparsing_Example.Course(name: "SABOOHI"), jsonparsing_Example.Course(name: "SANA IKRAM")]

在这里做东西

import UIKit
  struct Course: Decodable {
     let name: String
  // let id: Int
 //let place: String
  //let dept: String
  // let fName: String
}

 class ViewController: UIViewController {

@IBOutlet weak var lbl1: UILabel!
override func viewDidLoad() {
    super.viewDidLoad()


    let jsonUrlString = "http://54.171.95.38:8080/mhealth-webservice/aerapp/getPmdcDoctorByRegNo/21388"
//let jsonUrlString = "https://api.letsbuildthatapp.com/jsondecodable/courses"
    // url session to fetch data from internet
    guard let url = URL(string: jsonUrlString)
    // else will return out of viewdid load
        else {
      return
    }




    URLSession.shared.dataTask(with: url) {(data, response, err) in

        guard let data = data else {
            return
        }

        do {

            let courses = try JSONDecoder().decode([Course].self, from: data)

            print(courses)

            //lbl1.text = courses


           // let btcValues = try JSONDecoder().decode(BitcoinResponse.self, from: data)
            DispatchQueue.main.async {
               // self.btcValue.text = "$\(btcValues.last)"
                self.lbl1.text = "$\(courses)"
            }







        } catch let jsonErr{

            print("Error serializaing json" , jsonErr)


        }


        print("Do stuff here")

    }.resume()



}
override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    }
  }

这里的任何人都可以如何帮助我根据我的要求修改代码,我们将不胜感激。 :)

0 个答案:

没有答案