ここに問題があります。私はSwiftyJson経由で(JSON)からデータをダウンロードしています。私はそれをcoreDataに保存し、構造体の配列にフェッチしてtableViewに取り込みたいと思っています。これは一般的にやりたいことです。サーバーに接続できないときにCoreDataからデータをロードします接続または何か他の、ここでバックグラウンドでJSONをダウンロードし、データをSwiftのTableViewにフェッチ
は、私がこれまで
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
json()
}
func json {
deleteData()
// doing the parse and serialization
saveJson()
}
savejson{
// save into coredata ... manageContext and ....
}
// and rest of appdelegate
}
deleteData{
let fetchRequest = NSFetchRequest(entityName: ",myentityName")
fetchRequest.returnsObjectsAsFaults = false
do {
let results = try manageContext.executeFetchRequest(fetchRequest)
for manageObject in results{
let managedObjectData : NSManagedObject = manageObject as! NSManagedObject
manageContext.deleteObject(managedObjectData)
}
}catch let error as NSError {
print(" error : \(error) \(error.userInfo) ")
}
}
}
、その後、私は別のVI内のデータを使用していますがやっていることですewController(tableViewController)
Class table: UITableViewController{
override func viewWillAppear(animated: Bool) {
fetchCoreDate() //and put it into struct
}
//rest of the class table for table populate
}
、ここでは、私は、問題は、私は私は、コンソールでそれらを印刷するように私はすべてのデータをダウンロードしていますでのViewController
struct logs{
var logId: String
var logName: String
}
の間でデータを渡すために使用しています構造体ですテーブルのデータを見ると、そこに削除機能を置くとeveythingが削除され、過去のデータを削除して新しいデータに置き換えようとしていますが、Jsonのダウンロードはアプリケーションの起動よりも時間がかかるので、ロードされ、テーブルは新しいデータがロードされていないので、データを見るには削除機能を省略する必要がありますが、It alwa ysは過去のデータに追加してレコードの複製を表示します(削除を省略した場合)
削除機能付きテーブルには何も表示されません。その複製が表示されます。データと、それは時々、時にはない追加されますので、新しいものと交換してください)
そのビット長申し訳ありませんが、シナリオが異なるのViewControllerの間での作業について何とかですので、私は彼らのポスト私は私を見つけたすべての