Ios 在ViewController之间从域传递数据
我已经在我的领域数据库中保存了表单中的数据(如姓名、年龄、地址等),我希望在整个项目中将这些值传递给各个ViewController 在我的一个ViewController中,有一个tableview,它从数组中访问某些数据并填充单元格。我想做的是,当用户点击单元格时,来自我领域的数据会传递到DetailViewController中的各种标签和文本字段。我在前面读到,我所需要的只是使用prepareForSegue,但我不确定访问值的正确方法,因此它们会转到destinationviewcontroller。我将附加我的视图控制器的代码片段,以便您可以看到我当前的位置Ios 在ViewController之间从域传递数据,ios,swift,uiviewcontroller,realm,Ios,Swift,Uiviewcontroller,Realm,我已经在我的领域数据库中保存了表单中的数据(如姓名、年龄、地址等),我希望在整个项目中将这些值传递给各个ViewController 在我的一个ViewController中,有一个tableview,它从数组中访问某些数据并填充单元格。我想做的是,当用户点击单元格时,来自我领域的数据会传递到DetailViewController中的各种标签和文本字段。我在前面读到,我所需要的只是使用prepareForSegue,但我不确定访问值的正确方法,因此它们会转到destinationviewcon
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let request = try! Realm().objects(RenterRequest.self).sorted(byKeyPath: "requestAddress")
if segue.identifier == "HistoryData" {
let renterMaintenanceHistory = segue.destination as? RenterMaintenanceHistory
renterMaintenanceHistory?.renterHIstoryAddress.text = request.description
}
}
import UIKit
import RealmSwift
class RenterMaintenanceHistory: UIViewController {
var request = RenterRequest()
@IBOutlet weak var RenterHistoryPriority: UITextField!
@IBOutlet weak var renterHistoryType: UITextField!
@IBOutlet weak var renterHIstoryAddress: UITextField!
@IBOutlet weak var renterHistoryRoom: UITextField!
@IBOutlet weak var renterHIstoryProblemDescription: UITextView!
@IBOutlet weak var renterHistoryPreferredTimeAndDate: UITextField!
@IBOutlet weak var renterHistoryPets: UISwitch!
@IBOutlet weak var renterHistoryAuthorizedEntry: UISwitch!
@IBOutlet weak var renterHIstoryPreferredContactNumber: UITextField!
@IBOutlet weak var renterHistoryPreviouslyReported: UISwitch!
var renterHistoryAddress: String?
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
renterHIstoryAddress.text = renterHistoryAddress
}
}
当我运行代码并尝试访问该属性时,在展开可选值时,我得到了意外发现的nil。我是否应该通过模型访问realm.objects函数来检索值?不要将代码作为屏幕截图。使用正确的代码格式将其作为文本包含。我将其从照片更改为正确的代码格式,但并非所有内容的格式都正确。你能帮我回答我的问题吗?