簡體   English   中英

Swift 3核心數據獲取問題

[英]Swift 3 Core Data fetch issue

下面的函數用於獲取tableview的數據

func fetchProfiles() -> Array<User> {
    var users: Array<User> = []
    let fetchRequest: NSFetchRequest<Profile> = Profile.fetchRequest()
    let fetchedData = try! context.fetch(fetchRequest)
    if (!fetchedData.isEmpty) {
        print(fetchedData)
        for i in 0...fetchedData.count {
            var user: User = User()
            user.userName = fetchedData[i].profileName
            user.userSurname = fetchedData[i].profileSurname
            user.userPhoto = fetchedData[i].profilePhoto
            users.append(user)
        }
        return users
    }
    else {
        return users
    }
}

“用戶”是一個簡單的結構。 “Profile”是Core Data中的一個實體。 我創建了一個結構數組,用於表中的單元格。 代碼沒有錯誤(對於xCode)。 當沒有提取數據時,它會跳過附加數組,但是當有一些信息時,應用程序崩潰並顯示錯誤:

致命錯誤:NSArray元素無法匹配Swift數組元素類型

由於未知原因,自動生成的Core Data實體標頭存在問題。 我剛從文件夾中刪除了所有文件:

/Users/user/Library/Developer/Xcode/DerivedData/MyApp/Build/Intermediates/MyApp.build/Debug-iphonesimulator/MyApp.build/DerivedSources/CoreDataGenerated

然后清理我的項目

命令+移+ K

檢查了我的核心數據模型是否存在一些可能的問題,並重建了整個項目。 魔法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM