xcode/swift错误:找不到成员“行”
我一直遇到这样的错误:找不到成员行。 这是我的密码:xcode/swift错误:找不到成员“行”,xcode,swift,core-data,Xcode,Swift,Core Data,我一直遇到这样的错误:找不到成员行。 这是我的密码: import UIKit import CoreData class ListTableViewController: UITableViewController { var myList: Array<AnyObject> = [] override func viewDidAppear(animated: Bool) { let appDel:AppDelegate = UIApplication.sharedA
import UIKit
import CoreData
class ListTableViewController: UITableViewController {
var myList: Array<AnyObject> = []
override func viewDidAppear(animated: Bool) {
let appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let context:NSManagedObjectContext = appDel.managedObjectContext!
let freq = NSFetchRequest(entityName: "List")
myList = context.executeFetchRequest(freq, error: nil)!
tableView.reloadData()
}
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
if segue.identifier == "update" {
//GETTING ERROR ON THIS NEXT LINE//
var selectedItem: NSManagedObject =
myList[self.tableView.indexPathForSelectedRow()?.row!] as! NSManagedObject
let IVC: ItemViewController =
segue.destinationViewController as! ItemViewController
IVC.item = selectedItem.valueForKey("item") as! String
IVC.quantity = selectedItem.valueForKey("quantity") as! String
IVC.info = selectedItem.valueForKey("info") as! String
IVC.existingItem = selectedItem
}
}
任何人都可以帮我摆脱这个错误。当您调用self.tableView.indexPathForSelectedRow时,您将返回一个nsindepath实例,而不是一个整数。然后需要向nsindepath请求它的行。因此,调用应为self.tableView.indexPathForSelectedRow.row
当然,这是假设您的表视图中只有一个部分。尝试以下方法:
var selectedItem = myList[self.tableView.indexPathForSelectedRow()!.row] as! NSManagedObject