بيانات JSON على UITableView

0

تمكنت من تضمين واجهة برمجة التطبيقات هذه من موقع أمريكا FAA من أجل تنزيل NOTAM لنسخة تجريبية. تمكنت من إرسال طلب "مفتاح api والموقع والدولة". أستعيد بيانات JSON الخاصة بي وهي تعمل بشكل جيد. الآن مشكلتي هي أنني أريد عرضها على طاولةعرض عنصر واحد من الصفيف الذي استعدته بتنسيق JSON ، هو العنصر الذي يسمى "الكل".

لقد أنشأت IBOutlet. أعطيت معرف الخلية ، لكنني عالق هنا

import UIKit
import Alamofire
import SwiftyJSON

class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {
    //Constants
    let notamUrl = "https://v4p4sz5ijk.execute-api.us-east-1.amazonaws.com/anbdata/states/notams/notams-realtime-list"
    let api_key = "mykey"
    let notamModel = ModelloNotam()

    @IBOutlet weak var tableView: UITableView!

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return //????????? i dont know
    }

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

        // ????????? i dont know
        return cell
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        tableView.delegate=self
        tableView.dataSource=self

        func getNOTAM (url:String,parameters:[String:String]){
            Alamofire.request(url, method: .get, parameters: parameters).responseJSON {
                response in
                if response.result.isSuccess{
                    let notamJSON : JSON = JSON (response.result.value!)

                    self.displayNotam(json: notamJSON)
                } else{
                    print("errore connessione\(response.result.error)")
                }
            }
        }

        var locations = "VMMC"
        var state = "CHN"
        let params : [String : String] = ["locations" : locations, "state" : state, "api_key" : api_key]
        getNOTAM(url: notamUrl, parameters: params)
    }

    func displayNotam (json:JSON) {
        let conta = json.count

        for var i in 0...conta {
            i = i + 1
            notamModel.all = json [i]["all"].stringValue
            notamModel.type = json [i]["type"].stringValue
            //            print("The NOTAM type is \(notamModel.type)")
            //            print(notamModel.all)
            //            print("************************")
        }
    }
}

2 الاجابة

0

أنا حل مع هذا الرمز. !!

جدول func (_ tableView: UITableView، cellForRowAt indexPath: IndexPath) -> UITableViewCell {let cell = tableView.dequeueReusableCell (withIdentifier: "cellid"، for: indexPath)

// let text = array [indexPath.row] // cell.textLabel؟ .text = text

    (cell.contentView.viewWithTag(1) as! UILabel).text = array[indexPath.row]
    (cell.contentView.viewWithTag(2) as! UILabel).text = array2[indexPath.row]
    return cell
}

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

}

شكرا للمساعدة.

:مؤلف
0

يرجى الرجوع إلى هذا البرنامج التعليمي https://www.youtube.com/watch؟v=sd7d4eoM54U&t=1857s وبيانات النموذج وفقًا لملف JSON. طلب شبكة الاتصال يخرج من قائمة انتظار التنفيذ الرئيسية.

:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام