NSObject: 模型方法

方法基本
//3.創(chuàng)建模型對(duì)象
for ele in tweetNodes {

        let model = TweetModel()
        
        model.id = ele.elementsForName("id").last?.stringValue()
        model.portrait = ele.elementsForName("portrait").last?.stringValue()
        model.author = ele.elementsForName("author").last?.stringValue()
        
        model.authorid = ele.elementsForName("authorid").last?.stringValue()
        model.body = ele.elementsForName("body").last?.stringValue()
        model.attach = ele.elementsForName("attach").last?.stringValue()
        
        model.appclient = ele.elementsForName("appclient").last?.stringValue()
        model.commentCount = ele.elementsForName("commentCount").last?.stringValue()
        model.pubDate = ele.elementsForName("pubDate").last?.stringValue()
        
        model.imgSmall = ele.elementsForName("imgSmall").last?.stringValue()
        model.imgBig = ele.elementsForName("imgBig").last?.stringValue()
        model.likeCount = ele.elementsForName("likeCount").last?.stringValue()
        
        model.isLike = ele.elementsForName("isLike").last?.stringValue()
        model.likeList = ele.elementsForName("likeList").last?.stringValue()
        
        //id portrait author authorid body attach  appclient commentCount  pubDate imgSmall imgBig likeCount isLike likeList

        
       
        self.dataArray.addObject(model)
        
    }

2前域,方法 好用

func parseModel(element: GDataXMLElement, nameArray: Array<String>) -> TweetModel {

    let model = TweetModel()
    
    for name in nameArray {
        
        let value = element.elementsForName(name).last!.stringValue()
        //構(gòu)造setter方法
        //id -> setId:
        //name -> setName:
        
        let index = name.startIndex.successor()
        let setterName = String(format: "set%@%@:", name.substringToIndex(index).capitalizedString, name.substringFromIndex(index))
        print(setterName)
        
        //字符串轉(zhuǎn)換成方法
        let sel = NSSelectorFromString(setterName)
        
        model.performSelector(sel, withObject: value)
        
    }
    
    return model
}

//upper 調(diào)用

    for ele in tweetNodes {
        
        
        
        
        let nameArray = ["id", "portrait", "author", "authorid", "body", "attach",  "appclient", "commentCount",  "pubDate", "imgSmall", "imgBig", "likeCount", "isLike", "likeList"]
        let model = self.parseModel(ele, nameArray: nameArray)
        
        self.dataArray.addObject(model)
        
    }

3兵拢, 方 法 +

func parseModel(element: GDataXMLElement, nameArray: Array<String>, className: String) -> NSObject {

    //創(chuàng)建對(duì)象
    //Class
    let cls = NSClassFromString(className) as! NSObject.Type
    let model = cls.init()

    
    for name in nameArray {
        
        let value = element.elementsForName(name).last!.stringValue()
        //構(gòu)造setter方法
        //id -> setId:
        //name -> setName:
        
        let index = name.startIndex.successor()
        let setterName = String(format: "set%@%@:", name.substringToIndex(index).capitalizedString, name.substringFromIndex(index))
        //print(setterName)
        
        //字符串轉(zhuǎn)換成方法
        let sel = NSSelectorFromString(setterName)
        
        model.performSelector(sel, withObject: value)
        
    }
    
    return model
}

//upper 調(diào)用

    for ele in tweetNodes {
        
        
        
        
        let nameArray = ["id", "portrait", "author", "authorid", "body", "attach",  "appclient", "commentCount",  "pubDate", "imgSmall", "imgBig", "likeCount", "isLike", "likeList"]
        let model = self.parseModel(ele, nameArray: nameArray, className: "_3_TestOSChina.TweetModel")
        
        self.dataArray.addObject(model)
        
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末已慢,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子递惋,更是在濱河造成了極大的恐慌柔滔,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,036評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件萍虽,死亡現(xiàn)場(chǎng)離奇詭異睛廊,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)杉编,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,046評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門超全,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人邓馒,你說我怎么就攤上這事嘶朱。” “怎么了绒净?”我有些...
    開封第一講書人閱讀 164,411評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵见咒,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我挂疆,道長(zhǎng)改览,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,622評(píng)論 1 293
  • 正文 為了忘掉前任缤言,我火速辦了婚禮宝当,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘胆萧。我一直安慰自己庆揩,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,661評(píng)論 6 392
  • 文/花漫 我一把揭開白布跌穗。 她就那樣靜靜地躺著订晌,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蚌吸。 梳的紋絲不亂的頭發(fā)上锈拨,一...
    開封第一講書人閱讀 51,521評(píng)論 1 304
  • 那天,我揣著相機(jī)與錄音羹唠,去河邊找鬼奕枢。 笑死,一個(gè)胖子當(dāng)著我的面吹牛佩微,可吹牛的內(nèi)容都是我干的缝彬。 我是一名探鬼主播,決...
    沈念sama閱讀 40,288評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼哺眯,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼谷浅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起奶卓,我...
    開封第一講書人閱讀 39,200評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤一疯,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后寝杖,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體违施,經(jīng)...
    沈念sama閱讀 45,644評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,837評(píng)論 3 336
  • 正文 我和宋清朗相戀三年瑟幕,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了磕蒲。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,953評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡只盹,死狀恐怖辣往,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情殖卑,我是刑警寧澤站削,帶...
    沈念sama閱讀 35,673評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站孵稽,受9級(jí)特大地震影響许起,放射性物質(zhì)發(fā)生泄漏十偶。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,281評(píng)論 3 329
  • 文/蒙蒙 一园细、第九天 我趴在偏房一處隱蔽的房頂上張望惦积。 院中可真熱鬧,春花似錦猛频、人聲如沸狮崩。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,889評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)睦柴。三九已至,卻和暖如春毡熏,著一層夾襖步出監(jiān)牢的瞬間坦敌,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,011評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工招刹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恬试,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,119評(píng)論 3 370
  • 正文 我出身青樓疯暑,卻偏偏與公主長(zhǎng)得像训柴,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子妇拯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,901評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1幻馁、隨機(jī)數(shù) 不需要隨機(jī)數(shù)種子 arc4random()%N + begin:產(chǎn)生begin~begin+N的隨機(jī)數(shù)...
    我是小胡胡123閱讀 4,162評(píng)論 0 2
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,744評(píng)論 0 33
  • 1越锈、范型范型所解決的問題 函數(shù)仗嗦、方法、類型:類甘凭,結(jié)構(gòu)體稀拐,枚舉,元組類型丹弱,協(xié)議參數(shù)德撬,返回值,成員函數(shù)參數(shù)躲胳,成員屬性類...
    我是小胡胡123閱讀 828評(píng)論 0 1
  • 轉(zhuǎn)至元數(shù)據(jù)結(jié)尾創(chuàng)建: 董瀟偉蜓洪,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,715評(píng)論 0 9
  • 寶寶卡在秋千里隆檀,她爸爸拆了護(hù)欄,叫我抱出來,我說從下面溜出來就好了恐仑,寶寶溜出來泉坐,說,不要媽媽幫了菊霜。 寶寶每次搬重的...
    亡羊補(bǔ)牢君閱讀 140評(píng)論 0 0