Ich bekomme alle Daten von einem Server und analysiere sie mit JSON. Nachdem ich jede Geschichte bekommen hatte, machte ich eine Klasse namens MyStory
.Meine Anwendung läuft nicht auf dem iPhone/iPad, läuft aber gut im Simulator
class MyStory: NSObject
{
var location = ""
var storyId = 0
var title = ""
var story = ""
var AllImages = [Image]()
var images = NSArray() {
willSet(newValue){
// print("newvalue \(newValue)")
for obj in newValue {
let img = Image(dictionary: obj as! [String : AnyObject])
AllImages.append(img)
//imagePaths.append(img.imagePath)
let helper = HelperClass()
var imageDetail = "http://www.sleeksolutions.net/saad/" + img.imagePath
helper.imagepath.append(imageDetail)
//print("counter: \(helper.imagepath.count)")
}
}
}
init(dictionary: [String:AnyObject]) {
super.init()
self.setValuesForKeysWithDictionary(dictionary)
}
override func setValue(value: AnyObject?, forKey key: String) {
if key == "images"
{
// print("key = \(key) , value : \(value)")
}
//error occurs here.
super.setValue(value, forKey: key)
}
}
Und diese Funktion wird durch die Klasse SeeStories
genannt. Hier ist der Code:
let session = NSURLSession.sharedSession()
let request = NSMutableURLRequest(URL: url!)
request.timeoutInterval = 10
request.HTTPMethod = "GET"
let task = session.dataTaskWithRequest(request)
{
(dat, res, er) in
if er == nil
{
do
{
print("m hereeee")
self.serverStatus = true
let jsonObject = try NSJSONSerialization.JSONObjectWithData(dat!, options: .MutableContainers)
let arr = jsonObject as! NSDictionary
//print(jsonObject)
let storiees = arr["stories"] as! NSArray
for obj in storiees{
//Calling to MyStory Class here
let s = MyStory(dictionary: obj as! [String : AnyObject])
self.stories.append(s)
let stat = self.fetch(s)
if stat == false
{
self.saveInCoreData(s)
}
}
}
}
}
eine Ausnahme – Shubhank
Bitte Haltepunkt fügen Sie den Code zeigen Sie mir in 'setValuesForKeysWithDictionary' Methode – zylenv
Verwenden Sie eine externe Bibliothek? –