我试图使用UISwitch在解析类之间切换。 我在解析时有两个类mainClass和recentClass,我试图通过使用语法在它们之间切换。
我已经宣布了查询 在这个类的顶部。
@IBOutlet weak var barSwitch: UISwitch!
var query = PFQuery(className: "mainClass")
func switchChanged(barSwitch:UISwitch){
if (barSwitch.on == true) {
dispatch_async(dispatch_get_main_queue(),{ () -> Void in
self.query = PFQuery(className: "recentClass")
self.tableView.reloadData()
}
) }
else {
dispatch_async(dispatch_get_main_queue(),{ () -> Void in
self.query = PFQuery(className: "mainClass")
self.tableView.reloadData()
print("button was pressed")
}
) }
}
我不知道如何在queryForTable()
中使用该开关 override func queryForTable() -> PFQuery {
if (objects?.count == 0)
{
query.cachePolicy = PFCachePolicy.CacheThenNetwork
}
query.orderByAscending("SNo")
return query
}
根据@Tim我已编辑但仍然没有工作。
答案 0 :(得分:0)
您在切换功能中重新声明query
,因此它不会更改您的类变量。在func中的let
前面取出var
和query
。
此外,在dispatch
内,您可能需要放置self.query
。
在switchChanged
中调用queryForTable
func:
override func queryForTable() -> PFQuery {
switchChanged(barSwitch)
if (objects?.count == 0) {
query.cachePolicy = PFCachePolicy.CacheThenNetwork
}
query.orderByAscending("SNo")
return query
}