をプログラミングするのが初めてで、iOSアプリケーション でデータを管理しようとして問題が発生しました。 分離するために、MVCモデル明確に私は GenericでSwiftでレルムを使用
import RealmSwift
class TaskData: Object {
dynamic var id = 0
dynamic var title = ""
dynamic var category: Category?
// category.id:Int, category.name:String, category.priority:Int
dynamic var contents = ""
dynamic var date = NSDate()
/* set id as primary */
override static func primaryKey() -> String {
return "id"
}
}
TaskData.swift
ModelLocator.swiftimport UIKit
import RealmSwift
class ModelLocator : NSObject {
class var sharedInstance : ModelLocator {
struct Singleton {
static var instance = ModelLocator()
}
return Singleton.instance
}
var tasks = TaskModel<Object>()
override init() {
print("ModelLocator init!")
}
func getTask() -> TaskModel<Object> {
return tasks
}
func setTask(array:TaskModel<Object>) -> TaskModel<Object> {
tasks = array
return tasks
}
}
以下
として
import UIKit
import RealmSwift
let realm = try! Realm()
class TaskModel <T: Object>: NSObject {
var resources : Results<T>!
func getResources() -> Results<T> {
return resources
}
func fetchData(database: T) {
self.resources = try! Realm().objects(database.dynamicType).sorted("date", ascending: false)
}
func saveTaskData(number : Int, item : T){
let taskData:TaskData = TaskData()
try! realm.write {
switch number {
case 0:
taskData.id = item as! Int
break
case 1:
taskData.title = item as! String
break
default:
break
}
}
}
}
をModelData.swift
3迅速なクラスを作って、それを呼ばれますViewController.swiftでのViewController
ビルドでimport UIKit
import RealmSwift
class ViewController: UIViewController, UITableViewDelegate, UITableViewDataSource {
@IBOutlet weak var tbView: UITableView!
var taskModel: TaskModel<Object> = TaskModel()
var taskArray: Results<TaskData>?
var category: Category = Category()
override func viewDidLoad() {
super.viewDidLoad()
let modelLocator = ModelLocator()
taskModel = modelLocator.getTask()
let database = "TaskData"
taskArray = taskModel.fetchData(TaskData) // <- Where there is error in line
print(taskArray)
は、ラインは、上記の予想に '(TaskData).TYPE'(別名 'TaskData.Type')
は「型の値を変換することができないというエラーが表示さ引数型 'Object' "
左右の型は一致しませんが、正しい方法はわかりません。 (意味は別名私には馴染みがないし、グーグルが私にも役に立たなかった)
このコードをどのように修正すればよいか教えてもらえますか?