ios开发获取天气预报



本节重点


掌握本节获取天气预报与上一节获取二维码的代码区别。学会使用解析工具JSON Editor Online,该工具可解析类型信息。



内容介绍


比二维码稍微复杂,返回请求为JSON格式而非如二维码这样的Data类型。显示内容有城市名称,天气状况,温度即可。


1.www.k780.com——页面左侧点击天气预报——获取示例——复制接口


示例信息(JSON格式的信息)如图:


obtain1.png


2.像拖取imageView一样拖取三个标签(label)到显示界面,改标签名为天气,温度,地点。为了美观,可以进行字体和标签颜色的调整。进行布局调整。


3.同样的,打开Xcode——创建工程,代码实现(网址请求、发送…)标签对代码进行引用有:labelLocaltion,labelWeather,labelTemp,imageViewQrRCode,表示对地点、天气、温度的引用(引用方法和引用imageView一样)。


4.为了查看天气预报的类型信息 ,可以复制示例的显示的信息在JSON Editor Online上进行解析,解析返回对象中包含两个键值对success:1(表示成功运行)和result(21)(字典类型),解析如图:


obtain2.png


5.实现代码(步骤和第一节讲述的相同)


1)//网址为在k780.com所复制的链接


NSURLConnection.sendAsynchronousRequest(NSURLRquest(URL:NSURL(string:”http://...............”   )!),queue:NSOperationQueue())
{ (_ ,data , e )->Void in
//圆括号中:参数一为空,因为不需要,参数二:数据,参数三:error
 
if e == nil{//如果没有错误,则执行花括号内的代码
if let json = NSJSONSerialization.JSONObjectiwithData(data , options:nil,error:nil)  as ? NSoictionary
{
let result =json.valueEorKey("result")  as  NSDictionary
 
 
self.labelLocaltion.text = result["citynm"] as ?String 
self.labelWeather.text= result["Weather"] as ?String
self.labelTemp.text= result["temperature"] as ?String
//初始化组件
}
}
}


6.运行结果


obtain3.png



【本文由麦子学院独家原创,转载请注明出处并保留原文链接】

logo
© 2012-2016 www.maiziedu.com
蜀ICP备13014270号-4 Version 5.0.0 release20160127

免费领取价值1888元求职宝典!

客服热线 400-862-8862

回到顶部