我正在将我的代码从swift 2.1更改为swift 3,我正在面对这些错误的语法查询
错误1:类型的值没有成员值
Alamofire.request(url).responseJSON() {
(JSON) in
switch JSON.result {
case .success(let data):
let user_id=String(data.value(forKey: "UserLoginResult")?.value(forKey: "UserID") as! Int)
Run Code Online (Sandbox Code Playgroud)
我怎么能解决这个问题另外还有一个错误
错误2:二元运算符.. <不能应用于Int和Int类型的操作数?
var serviceProvicedListArray:NSMutableArray? = NSMutableArray()
let resultObjectItems = self.serviceProvicedListArray!.value(forKey: "lstActType")
for i in 0..<Int(resultObjectItems[0])!{
Run Code Online (Sandbox Code Playgroud)
我怎么能解决同样的问题,我是swift 3的新手,请帮助!! 提前致谢
您需要指定Dictionary要访问其值的数据类型.
case .success(let data):
var userId = ""
if let dic = data as? [String:Any],
let loginDic = dic["UserLoginResult"] as? [String:Any],
let userID = loginDic["UserID"] as? Int {
userId = "\(userID)"
}
Run Code Online (Sandbox Code Playgroud)
对于第二个错误,您需要包装可选项
for i in 0..<(userArray?.count ?? 0) {
Run Code Online (Sandbox Code Playgroud)
或者您可以像这样解开userArray.
if let array = userArray {
for i in 0..<array {
//access array here
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6256 次 |
| 最近记录: |