/**
* 显示数据
*/
/**
* 一,使用自带的NSJSONSerialization
苹果从IOS5.0后推出了SDK自带的JSON解决方案NSJSONSerialization,这是一个非常好用的JSON生成和解析工具,效率也比其他第三方开源项目高。
NSJSONSerialization能将JSON转换成Foundation对象,也能将Foundation对象转换成JSON,但转换成JSON的对象必须具有如下属性:
1,顶层对象必须是NSArray或者NSDictionary
2,所有的对象必须是NSString、NSNumber、NSArray、NSDictionary、NSNull的实例
3,所有NSDictionary的key必须是NSString类型
4,数字对象不能是非数值或无穷
注意:尽量使用NSJSONSerialization.isValidJSONObject先判断能否转换成功
*/
//声明:result是网络请求下来的数据
func loadData(result:NSDictionary) {
//在进行网络解析时,由于刚正式的用swift写项目,遇到各种问题,各种尝试,终于找到破解方法,下面我将进行网络请求时遇到的问题与大家分享交流下(ps:swift语法特点与OC差异很大,接触swift时也许不太习惯)
//下面这行代码这么写 会报错:如下 cannot convert value of type 'AnyObject' to specified type 'NSDictionary'
//let data:NSDictionary = result1 .objectForKey("data")
//下面这行代码这么写 会报错:如下 fatal error: unexpectedly found nil while unwrapping an Optional value
//let data = result1.valueForKey("data") as! [NSDictionary:AnyObject]
//下面这行代码这么写 会报错:如下 Could not cast value of type '__NSCFArray' (0x19eba9150) to 'NSDictionary' (0x19eba9380).
//let yourFirstObj : NSDictionary = result["productList"] as! NSDictionary
//上面是我遇到的问题,大家一定要注意下print(result)
//首先判断能不能转换
if (!NSJSONSerialization.isValidJSONObject(result)) {
print("is not a valid json object")<