【发布时间】:2017-06-22 01:11:26
【问题描述】:
我正在构建一个 IOS 应用程序,不知何故我必须在 swift 类中进行聚合,但每次我想获取数据时,它总是返回错误。好像我的数据总是返回 nil 结果。
我想在视图控制器类中推送 DoctorList 成员对象(调度) 我已经创建了对象,并且还调用了 init() 函数。但是,当我推送(或调用)DoctorList 类的init 函数并传递ScheduleList 数组时, DoctorList 类中的schedule 成员的内容将始终为空。
所以当我尝试获取时间表时,它会返回 nil 结果。
每个人都可以告诉我我做错了什么,因为我已经更改了代码但它仍然给出 nil 结果。
我有两个这样的班级
class DoctorList: NSObject {
var DoctorID: String?
var DoctorName: String?
var SpecialtyID: String?
var SpecialtyName: String?
var ImageURL: String?
var Schedule: [ScheduleList]?
init(_ DoctorID:String, _ DoctorName:String, _ SpecialtyID:String, _ SpecialtyName:String, _ ImageUrl:String, _ Schedule:[ScheduleList] ){
self.DoctorID = DoctorID
self.DoctorName = DoctorName
self.SpecialtyID = SpecialtyID
self.SpecialtyName = SpecialtyName
self.ImageURL = ImageUrl
for sc in Schedule {
self.Schedule?.append(ScheduleList(sc.DoctorID!, sc.DayName!, sc.FirstHour!, sc.LastHour!))
}
}
var getSchedule: [ScheduleList] {
get {
return self.Schedule!
}
}
还有这个
class ScheduleList: NSObject {
var DoctorID: String?
var DayName: String?
var FirstHour: String?
var LastHour: String?
init(_ DoctorID:String, _ DayName:String, _ FirstHour:String, _ LastHour:String ){
self.DoctorID = DoctorID
self.DayName = DayName
self.FirstHour = FirstHour
self.LastHour = LastHour
}
计划的返回值始终为空
对不起,谁能给一个建议,如何在 swift 中创建一个全局变量?
【问题讨论】:
-
仅供参考 - 命名变量和方法以小写字母开头是标准的。类和结构名称以大写字母开头。
-
而且你不应该让你的 Swift 类扩展
NSObject,除非你有明确和具体的需要。 -
此外,您的
DoctorList或ScheduleList类的属性似乎没有任何理由是可选的。它们都在init方法中设置。