1

UItableview のセル値を削除する前に、次のコードを使用すると、正常に動作しますが、エラーが発生します。エラー: 次の行のタイプ '(NSManagedObject)' の引数リストで 'deletedObjects' を呼び出すことはできません:

context.deletedObjects(results[indexPath.row] as NSManagedObject)

これを修正する方法は?関連する関数のコード:

     let cell: UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "Default")
            var appDel = (UIApplication.sharedApplication().delegate as! AppDelegate)
            var context = appDel.managedObjectContext
            var request = NSFetchRequest(entityName: "UserCholesterol")
            request.returnsObjectsAsFaults = false
var results: NSArray = context!.executeFetchRequest(request, error: nil)!
        context.deletedObjects(results[indexPath.row] as NSManagedObject)

        context!.save(nil)
        totalEntries = totalEntries - 1
        tblLog.reloadData()
4

2 に答える 2

0

deletedObjectsは単なるプロパティでありNSManagedObjectContext、メソッドではありません。しかし、 というメソッドがあり- deleteObject:ます。

次のコード行に置き換えてみてください。

context.deleteObject(results[indexPath.row] as! NSManagedObject) // in Xcode 6.3 and above,you have to add ! after `as` keyword.
于 2015-05-24T08:37:38.130 に答える