Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/107.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Swift 2.plist dictArray到远程Json数组错误_Ios_Arrays_Json_Swift - Fatal编程技术网

Ios Swift 2.plist dictArray到远程Json数组错误

Ios Swift 2.plist dictArray到远程Json数组错误,ios,arrays,json,swift,Ios,Arrays,Json,Swift,我有工作表视图和详细视图项目。但是基于它的local.plist数组系统我想把它改为remote.json数组系统我尝试了一些东西,但出现了错误。我需要你的帮助!下的工作代码。泰 import Foundation import MapKit struct VacationSpot { let identifier: Int let name: String let locationName: String let thumbnailName: String let why

我有工作表视图和详细视图项目。但是基于它的local.plist数组系统我想把它改为remote.json数组系统我尝试了一些东西,但出现了错误。我需要你的帮助!下的工作代码。泰

import Foundation
import MapKit

struct VacationSpot {
  let identifier: Int
  let name: String
  let locationName: String
  let thumbnailName: String
  let whyVisit: String
  let whatToSee: String
  let weatherInfo: String
  let userRating: Int
  let wikipediaURL: NSURL
  let coordinate: CLLocationCoordinate2D
}

// MARK: - Support for loading data from plist

extension VacationSpot {

  static func loadAllVacationSpots() -> [VacationSpot] {
    return loadVacationSpotsFromPlistNamed("vacation_spots")
  }

  private static func loadVacationSpotsFromPlistNamed(plistName: String) -> [VacationSpot] {
    guard
      let path = NSBundle.mainBundle().pathForResource(plistName, ofType: "plist"),
      let dictArray = NSArray(contentsOfFile: path) as? [[String : AnyObject]]
      else {
        fatalError("An error occurred while reading \(plistName).plist")
    }




    var vacationSpots = [VacationSpot]()

    for dict in dictArray {
      guard
        let identifier    = dict["identifier"]    as? Int,
        let name          = dict["name"]          as? String,
        let locationName  = dict["locationName"]  as? String,
        let thumbnailName = dict["thumbnailName"] as? String,
        let whyVisit      = dict["whyVisit"]      as? String,
        let whatToSee     = dict["whatToSee"]     as? String,
        let weatherInfo   = dict["weatherInfo"]   as? String,
        let userRating    = dict["userRating"]    as? Int,
        let wikipediaLink = dict["wikipediaLink"] as? String,
        let latitude      = dict["latitude"]      as? Double,
        let longitude     = dict["longitude"]     as? Double
        else {
          fatalError("Error parsing dict \(dict)")
      }

      let wikipediaURL = NSURL(string: wikipediaLink)!
      let coordinate = CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
      let vacationSpot = VacationSpot(
        identifier: identifier,
        name: name,
        locationName: locationName,
        thumbnailName: thumbnailName,
        whyVisit: whyVisit,
        whatToSee: whatToSee,
        weatherInfo: weatherInfo,
        userRating: userRating,
        wikipediaURL: wikipediaURL,
        coordinate: coordinate
      )

      vacationSpots.append(vacationSpot)
    }

    return vacationSpots
  }
}

用相同的代码解析

  let wikipediaURL = NSURL(string: wikipediaLink)!
      let coordinate = CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
      let vacationSpot = VacationSpot(
        identifier: identifier,
        name: name,
        locationName: locationName,
        thumbnailName: thumbnailName,
        whyVisit: whyVisit,
        whatToSee: whatToSee,
        weatherInfo: weatherInfo,
        userRating: userRating,
        wikipediaURL: wikipediaURL,
        coordinate: coordinate
      )

你发现了什么错误?@Stefan我确实错了,现在我没有任何正确的代码:(