Невозможно преобразовать значение времени «Int» в ожидаемый тип аргумента «NSPropertyListReadOptions» в Swift 2

Я обновляю свой существующий код до Swift 2, и мне нужна помощь с сохранением файла Plist.

Этот код работал в Xcode 6.3, но теперь с Xcode 7 и Swift 2 он показывает мне эту ошибку:

Не удается преобразовать значение времени «Int» в ожидаемый тип аргумента «NSPropertyListReadOptions» (он же «NSPropertyListMutabilityOptions»).

var resultValue = "Value goes here"


@IBAction func saveNote(sender: AnyObject) {
    // Save note to plist
    var appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
    var pathForThePlistFile = appDelegate.plistPathInDocument

    // Extract the content of the file as NSData
    var data:NSData =  NSFileManager.defaultManager().contentsAtPath(pathForThePlistFile)!
    // Convert the NSData to mutable array
    var notesArray = (try! NSPropertyListSerialization.propertyListWithData(data, options: Int(NSPropertyListMutabilityOptions.MutableContainersAndLeaves.rawValue), format: nil)) as! NSMutableArray
    //

    notesArray.addObject(resultValue)
    // Save to plist
    notesArray.writeToFile(pathForThePlistFile, atomically: true)
}

Пожалуйста помоги!


person AJ152    schedule 04.09.2015    source источник


Ответы (2)


Я не думаю, что вам нужно преобразовывать параметр options в Int, он должен принимать значение типа NSPropertyListMutabilityOptions:

var notesArray = (try! NSPropertyListSerialization.propertyListWithData(data, options:NSPropertyListMutabilityOptions.MutableContainersAndLeaves, format: nil)) as! NSMutableArray
person Peter Willsey    schedule 04.09.2015

вы не можете определить свой вариант с помощью собственной разработки Apple, у вас есть некоторые правила, и уже сказано, что вы можете использовать только свойство 2 option. Для вашего понимания я связываю документацию NSropertyListSerialization внимательно прочитайте, и вы поймете, как это сделать.

Либо вы можете использовать

NSPropertyListMutabilityOptions

либо

NSPropertyListReadOptions

или ноль

int здесь не поддерживается

person AFTAB MUHAMMED KHAN    schedule 04.09.2015