我想从核心数据中获取一些数据,并且遇到轻微问题。我可以毫无问题地获取数据。如果我println(data)
它将显示fooBar
不与存储在它的数据存在SWIFT - 'AnyObject'没有成员名'fooBar'
"'AnyObject' does not have a member name 'fooBar'
:那一刻我试图抓住特定的数据块(即data.fooBar
),它抛出了一个错误。
我不确定它为什么这样做。我试图寻找答案,并尝试了一堆不同的东西,但似乎没有任何工作。任何帮助都会很棒。谢谢。 :)
var results : Array<AnyObject> = []
func tableView(tableView: UITableView!, didSelectRowAtIndexPath indexPath: NSIndexPath!) {
//get the data for that storedItem
var appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
var context:NSManagedObjectContext = appDel.managedObjectContext!
let req = NSFetchRequest(entityName: "storedItems")
let name:String = results[indexPath.row].name
req.predicate = NSPredicate(format: "name == %@", name)
req.returnsObjectsAsFaults = false
var tapResults = context.executeFetchRequest(req, error: nil)!
for item in tapResults {
println(item) //works, shows all data correctly(including subText)
println(item.name) //works, the only one that does for some reason???
println(item.subText) //Error 'AnyObject' does not have a member name 'subText'
}
下面是结果:println(item)
println(item) <NSManagedObject: 0x7f04be60> (entity: storedItems; id: 0x7f041de0 <x-coredata://DD4F8E68-2234-46B5-B1D8-AE2F75245C63/storedItems/p1> ; data: {
alarmSound = default;
isDefault = 0;
name = "test";
sliderHours = 0;
sliderMinutes = 0;
sliderSeconds = 0;
subText = "00:00:00";
UPDATE:基于以上vacawama答案的讨论(谢谢阿龙)。如需正确的解决方案,请参阅我接受的答案。
我itemObj类
@objc(itemObj)
class itemObj: NSManagedObject {
@NSManaged var name:String!
@NSManaged var sliderHours:NSNumber
@NSManaged var sliderMinutes:NSNumber
@NSManaged var sliderSeconds:NSNumber
@NSManaged var subText:String!
@NSManaged var alarmSound:String!
@NSManaged var isDefault:NSNumber
}
我的AddItem VC:
var tResults = (context.executeFetchRequest(req, error: nil))
for item in tResults as [itemObj!] {
println(item.name)
println(item.subText)
}
swift是类型安全的,有100多个问题处理问题完全一样。 – 2014-09-28 13:28:27
@ Daij-Djan感谢downvote,正如你在我的问题中看到的,我一直在寻找一段时间(仍然是)。你能提供一个可以帮助我的链接吗? – 2014-09-28 13:31:54
许多相关部分中的链接相匹配。当你问一个链接:试试这个:(我检查它,它确实解释它)http://stackoverflow.com/questions/24770515/swift-anyobject-does-not-have-a-member-named-removeatindex? rq = 1 OR this:http://stackoverflow.com/questions/25223549/swift-anyobject-does-not-have-a-member-named-make?rq=1 – 2014-09-28 13:35:28