Json 如何将两个值中的一个值添加到swift中的参数键?
我的AddEventViewController包含两个按钮1)PublishEvent 2)DraftEvent 在这里,如果我单击publisheventBtn,则事件应显示在publish段中。。若我单击DraftBtn,那个么事件应该转到draft段 为此,我有如下JSON参数:这里如何根据按钮更改Json 如何将两个值中的一个值添加到swift中的参数键?,json,swift,dictionary,button,Json,Swift,Dictionary,Button,我的AddEventViewController包含两个按钮1)PublishEvent 2)DraftEvent 在这里,如果我单击publisheventBtn,则事件应显示在publish段中。。若我单击DraftBtn,那个么事件应该转到draft段 为此,我有如下JSON参数:这里如何根据按钮更改状态键值单击表示如果我单击PublishEvent,那么我必须给出status=“Publish”,如果我单击draftButn,那么status=“Draft” 剩余代码: func Add
状态
键值单击表示如果我单击PublishEvent,那么我必须给出status=“Publish”
,如果我单击draftButn,那么status=“Draft”
剩余代码:
func AddEvent(){
let request = NSMutableURLRequest(url:url! as URL,
cachePolicy: .useProtocolCachePolicy,
timeoutInterval: 10.0)
request.httpMethod = "POST"
if httpResponse!.statusCode == 200 {
do {
let jsonObject = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String :AnyObject]
let viewController = self.storyboard?.instantiateViewController(withIdentifier: "EventsViewController") as! EventsViewController
viewController.eventType = "Published"
self.navigationController?.pushViewController(viewController, animated: true)
}
}
catch {
print(error.localizedDescription)
}
}
else {
self.showAlert(title: "", message: "Please enter vaild details")
}
}
})
dataTask.resume()
}
@IBAction func publishNewEvent(_ sender: Any) {
addNewEvents()
}
@IBAction func draftEvent(_ sender: Any) {
addNewEvents()
}
您可以使用三元运算符
?
为状态变量赋值,并根据条件为其赋值
let status = didClickDraftButton ? "Draft" : "Publish"
let parameter = ["status": status, ...]
相应地设置didClickDraftButton
的值。下面是一个例子:
var didClickDraftButton = true // default value or could use optional if you want
@IBAction func publishNewEvent(_ sender: Any) {
didClickDraftButton = false
addNewEvents()
}
@IBAction func draftEvent(_ sender: Any) {
didClickDraftButton = true
addNewEvents()
}
这里的didClickDraftButton
didClickDraftButton
是一个Bool
。单击草稿按钮时设置true
,否则设置false
。您能否演示如何在不使用didClickDraftButton
的情况下将两个值中的一个值添加到状态中?我不确定您要的是什么。此外,不使用didClickDraftButton
属性的原因是什么?也就是说,对于EventsViewController
这里我需要通过草稿或发布,对吗?然后只有JSON api在Swift中使用eventType
不相关,但不使用NSMutableURLRequest
和NSURL
。JSON字典值决不是AnyObject
,而是Any
。如果所需的类型是集合类型,则.allowFragments
是无意义的。名称总是以小写字母开头。@vadian,谢谢。。我会记住这些话
var didClickDraftButton = true // default value or could use optional if you want
@IBAction func publishNewEvent(_ sender: Any) {
didClickDraftButton = false
addNewEvents()
}
@IBAction func draftEvent(_ sender: Any) {
didClickDraftButton = true
addNewEvents()
}