'AnyObject'没有名为'group'的成员

时间:2015-07-28 01:10:33

标签: xcode swift

'消息'代码和'组'代码完全相同,无法弄清楚为什么我得到'AnyObject'没有名为'group'的成员错误,这将不允许我构建和运行我的应用程序。

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    var appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
    var context:NSManagedObjectContext = appDel.managedObjectContext!

    var request = NSFetchRequest(entityName: "Messages")
    request.returnsObjectsAsFaults = false

    var results = context.executeFetchRequest(request, error: nil)

    if results?.count > 0 {

        for x:AnyObject in results! {

            if let message = x.message! {

                self.messages.append(message)

            }

        }

    }

    var request2 = NSFetchRequest(entityName: "Groups")
    request2.returnsObjectsAsFaults = false

    var results2 = context.executeFetchRequest(request2, error: nil)

    if results2?.count > 0 {

        for x:AnyObject in results2! {

            if let group = x.group! {

                self.groups.append(group)

            }

        }

    }

}

我在其他地方寻找过同样的错误,找不到任何解决方法。我是swift / xcode的新手,所以如果这是一个初学者级别的问题,请给我一些懈怠!提前谢谢!

1 个答案:

答案 0 :(得分:2)

这种情况正在发生,因为您正在将for for循环中的x转换为AnyObject类型,如果这是期望的行为,那么我认为您可能正在尝试从核心检索密钥的值数据对象,在这种情况下,您可能正在寻找

x.valueForKey("keyName") as? DESIRED_TYPE

如果您使用的是不同类型的对象,则可以将它们强制转换为执行获取请求的结果数组

var results2 = context.executeFetchRequest(request2, error: nil) as! [YourCustom or NSManagedObjects]