麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

IOS開發之XML解析以及下拉刷新上拉加載更多的分享

2019-11-14 19:19:32
字體:
來源:轉載
供稿:網友

IOS開發之xml解析

  

  1.XML格式

<?xml version="1.0" encoding="utf-8" ?> 表示XML文件版本, 內部文本使用的編碼

<root> 表示根節點

<CityName>北京</CityName>  一個結點, CityName是結點名, 北京結點值

<Item key="1" value="A"></Item>     key="1"是結點屬性, key屬性名, "1"屬性值

注意: XML結構理解為層層嵌套的樹形結構

<?xml version="1.0" encoding="utf-8" ?><root>    <systemConfig>      <CityName>北京</CityName>      <CityCode>201</CityCode>      <ParentCityCode> 0</ParentCityCode>      <areaCode>010</areaCode>      <AgreementUrl></AgreementUrl>      <IntentionLevel>                               <Item key="1" value="A"></Item>        <Item key="2" value="B"></Item>        <Item key="3" value="C"></Item>      </IntentionLevel>      <ComeChannel>                                   <Item key="1" value="報紙"></Item>        <Item key="2" value="雜志"></Item>      </ComeChannel>      <BuyCarBudget>                               <Item key="1" value="40-50萬"></Item>        <Item key="2" value="50-60萬"></Item>      </BuyCarBudget>     <IntentionColor>         <Item key="1" value="紅"></Item>         <Item key="2" value="黃"></Item>     </IntentionColor>    </systemConfig></root>

  2.如何使用GData開源庫實現XML解析

常用的XML解析方式

  (1)unix - libxml2 C接口

  (2)NSXMLParser UI提供的XML解析庫, 使用比較麻煩

  (3)google開發GData

  2.1配置

  2.2 GData的使用

 //1.加載和解析XML文件    NSString *path = [[NSBundle mainBundle] pathForResource:@"xml.txt" ofType:nil];    NSData *data = [[NSData alloc] initWithContentsOfFile:path];    // GDataXMLDocument 表示XML文檔對象    // initWithData 使用NSData初始化, 就是解析    GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:data options:0 error:nil];        //2.獲取指定結點 XPath    //CityName路徑: /root/systemConfig/CityName    NSArray *array = [doc nodesForXPath:@"/root/systemConfig/CityName" error:nil];    //CityName    GDataXMLElement *element = [array firstObject];    NSLog(@"name=%@ value=%@",element.name,element.stringValue);        //3.獲取指定結點的屬性    NSArray *items = [doc nodesForXPath:@"/root/systemConfig/ComeChannel/Item" error:nil];    GDataXMLElement *item = [items firstObject];    //獲取屬性, 屬性使用GDataXMLElement表示    for(GDataXMLElement *attr  in item.attributes)    {        NSLog(@"a-name=%@ avalue=%@",attr.name,attr.stringValue);    }            //4.獲取所有指定名字的結點(不管位置)    //XPath語法: //Item    NSArray *allItem = [doc nodesForXPath:@"//Item" error:nil];    for (GDataXMLElement *e in allItem) {        NSLog(@"name = %@",e.name);    }        //5.獲取所有指定名字的屬性(不管哪個結點的)    //XPath語法: //@value    NSArray *allValue = [doc nodesForXPath:@"//@value" error:nil];    for (GDataXMLElement *e in allValue) {        NSLog(@"value = %@",e.stringValue);    }        //6.逐層遍歷XML文件    //獲取根節點    GDataXMLElement *root = doc.rootElement;    //獲取子節點    //root.children    //獲取子節點個數    //root.childCount    //獲取指定名字的子節點    //root elementsForName:<#(NSString *)#>

 

IOS開發之下拉刷新上拉加載更多

常用的下拉刷新的實現方式

  (1)UIRefreshControl

  (2)EGOTableViewRefresh

  (3)AH3DPullRefresh

  (4)MJRefresh

  (5)自己實現

具體刷新方式,下次再說!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日本成人一二三区 | 香蕉秀| 九九热在线视频观看这里只有精品 | 久久精品视频1 | 色播久久 | 在线中文字幕播放 | 亚洲综合视频网站 | 最新中文在线视频 | 久久人人爽人人爽人人片av高清 | 天天操天天骑 | 精品国产一区二区亚洲人成毛片 | 日本羞羞的午夜电视剧 | 久久久视频免费观看 | 国产妞干网 | 欧美国产一区二区三区 | 护士hd欧美free性xxxx | 一区二区三区日韩在线 | 日韩欧美电影一区二区三区 | 日本教室三级在线看 | 国产精品性夜天天视频 | 久久久噜噜噜久久熟有声小说 | 黄色国产在线观看 | 可以免费看的av | 国产永久免费观看 | 久久精精 | a视频在线播放 | 成人午夜免费看 | 爱射av| 黄色网址免费入口 | 免费观看一区 | 一本一本久久a久久精品综合小说 | 久久手机在线视频 | 亚洲精品久久久久久久久久 | 在线看毛片的网站 | 国产一区二区精品91 | 夜夜看 | 性大片1000免费看 | 国产精品区一区二区三区 | av一二三四区 | 亚洲成人国产综合 | 91av久久|