1
私はtoDoリストアプリケーションを3/iOS 10にアップデートしようとしていますが、更新時のエラー。私はインターネットとStackOverflowを調べて、他の誰かがこの問題を抱えていることに気がついたが、そこの解決策は私には役に立たなかった。 これは、Core Dataに挿入するためのファイルです。Swift3エラー:タイプ 'NSFastEnumerationIterator.Element'(別名 'Any')がプロトコル 'AnyObject'に準拠していません
これは、そのファイルのコードです:
タイプ 'NSFastEnumerationIterator.Element'(別名「どれ:だから、それはこのようなのを行くライン18上のエラーを与える
import UIKit import CoreData var taskMgr: TaskManager = TaskManager() struct task { var name = "not defined" var desc = "not defined" } class TaskManager: NSObject { var tasks = [task]() var persistenceHelper: PersistenceHelper = PersistenceHelper() override init(){ let tempTasks:NSArray = persistenceHelper.list(entity: "Task") for res:AnyObject in tempTasks{ tasks.append(task(name:res.valueForKey("name")as! String,desc:res.valueForKey("desc") as! String)) } } func addTask(name:String, desc: String){ var dicTask: Dictionary<String, String> = Dictionary<String,String>() dicTask["name"] = name dicTask["desc"] = desc if(persistenceHelper.save(entity: "Task", parameters: dicTask)){ tasks.append(task(name: name, desc: desc)) } } func removeTask(index:Int){ let value:String = tasks[index].name if(persistenceHelper.remove(entity: "Task", key: "name", value: value)){ tasks.remove(at: index) } } }
')はプロトコル「AnyObject」に準拠していません
C誰でも助けてくれますか? ありがとう:)
このように 'NSArray'を強制する必要があり、' AnyObject'をこのように強制することはあまりありません。これらのタイプを削除し、システムにタイプ推論を実行させます。それでも問題が解決しない場合は、これをMCVE(http://stackoverflow.com/mcve)に減らしてください。あなたの質問を書いたので、無関係なコード(addTask、removeTask)が多く、重要なコード(persistenceHelper.listの定義)がありません。 –
@RobNapier「いいえ '値」候補のような他のエラーは、予想されるコンテキスト結果タイプ' String 'を生成するだけです。あなたはそれを修正する方法を知っていますか? – Jenoah
上記のように、MCVEに協力して助けてください。 –