實(shí)現(xiàn)仿微博的微博圖文混排功能的優(yōu)美分層的思路

思路如下:

1.把不固定的部分(這里指展示的正文和圖片整體)抽象出來

2.把這部分寫到一個(gè)單獨(dú)的類當(dāng)中(在這個(gè)類中添加手勢和代理)

3.把這個(gè)帶有管理屬性的View晦溪,整體的加到我們訂制的cell里面

4.并且在cell類當(dāng)中要將view的model單獨(dú)求出來一死,然后重新寫set的方法

如果這樣做4放闺,我們就可以在5中做如下操作

5.在展示cell的ViewController中垢油,UITableViewCell的展示cell的代理方法中壕探,我們需要將這個(gè)model求出來飘诗,根據(jù)tag值刪除這個(gè)管理屬性的View(防止出現(xiàn)重用問題),給cell的屬性model賦值--》就會(huì)自動(dòng)調(diào)用4當(dāng)中的set方法

這樣展示就沒有問題了与倡,當(dāng)然其中的問題就是計(jì)算它們的frame

6.展示出來Ok,能拿到NSIndexPath 和,對應(yīng)path的圖片的tag值疚察,一切就都有了線索 6作為一個(gè)過渡蒸走,下面執(zhí)行操作7

7 在2根據(jù)model創(chuàng)建View的時(shí)候要添加手勢,并要暴露一個(gè)接口(也就是代理)貌嫡,讓其他類拿到它執(zhí)行操作

刪除管理屬于的view比驻,什么意思该溯?就是刪除不定的那個(gè)View整體,我這里是為了防止重用問題别惦,這塊有待商榷

接下來收拾展示部分

展示我們是用瀑布流橫向滑動(dòng)狈茉,所以需要定制一下cell,來展示出我們特定的內(nèi)容

8 定制展示的cell掸掸,添加手勢氯庆,并在解鎖手勢響應(yīng)的時(shí)候并寫一個(gè)代理,這個(gè)接口暴露是為了點(diǎn)擊返回做一系列的動(dòng)作(這里有返回和動(dòng)畫)

這樣基本就搞定了一大部分扰付,骨架就有了堤撵,下面就是具體的展示過程實(shí)現(xiàn)

9.創(chuàng)建要展示的這個(gè)瀑布流的ViewController,這里也有重點(diǎn)羽莺,而且是很繞的

是動(dòng)畫的實(shí)現(xiàn)我們需要怎么構(gòu)建呢实昨?

10.我們需要一個(gè)UIImageView 成員變量,和記錄當(dāng)前的pag 的NSInteger 的成員變量

11.這是我們的成員變量盐固,我們還需要添加代理荒给,就是在它消失前和消失后

12.我們在UITableViewCell? 展示的那個(gè)ViewController 中,響應(yīng)了點(diǎn)擊的代理刁卜,并根據(jù)它的path 和tag? 找到我們的改組的img的URL志电,還有求出它的轉(zhuǎn)換過來的相對ViewController的frame的數(shù)組,將瀑布流的ViewController的delegate設(shè)置為self蛔趴,傳遞這倆個(gè)屬性

13.拿到屬性之后挑辆,求它的原寬高比的高,重新調(diào)用8的cell的rect展示

這樣可以就大圖展示了夺脾,接下來給它響應(yīng)回去的代理方法

14.響應(yīng)cell的back的代理方法之拨,在瀑布流的viewDidApplear 里創(chuàng)建,放大咧叭,并展示cell蚀乔,然后隱藏

這樣就能看,還能滑動(dòng)菲茬,看完還能回去吉挣,基本就完成了,但是我們可以給他潤色一下婉弹,就會(huì)好玩一些睬魂,那么就是響應(yīng)動(dòng)畫了

動(dòng)畫的響應(yīng)就是用一個(gè)imageView來搞,就是10當(dāng)中的UIImageView的成員變量镀赌,和12傳遞過來的rect的數(shù)組做原料了


這個(gè)I'mgView 僅負(fù)責(zé)動(dòng)畫氯哮,負(fù)責(zé)創(chuàng)建,放大商佛,隱藏喉钢,縮小姆打,移除,但是它的這些生命周期是怎么演變的肠虽,就是一個(gè)時(shí)機(jī)火候的問題了幔戏,我覺得是,所以執(zhí)行14了

15在 在瀑布流的viewDidApplear 里創(chuàng)建的dismiss前我們要拿到瀑布流的當(dāng)前page税课,這樣才能拿到他的rect,在cell的點(diǎn)擊回退的代理方法時(shí)闲延,讓本ViewController的delegate? 響應(yīng) 他的afterdismiss方法

經(jīng)過14 我們能動(dòng)畫放大,經(jīng)過15我們把消失的步已經(jīng)布好了韩玩,需要在消失前把改ViewController的img成員熟悉傳給回退到的ViewContller

現(xiàn)在只剩一步

回到UITableViewCell展示的ViewController里執(zhí)行16就Ok了

16.響應(yīng)瀑布流的ViewController的代理方法垒玲,dismissViewController的after方法,讓傳過來的ImgView縮小啸如,在動(dòng)畫結(jié)束后侍匙,removeFromSuper

伴隨著做動(dòng)畫的這個(gè)主角imageView的創(chuàng)建氮惯,放大叮雳,隱藏,傳遞妇汗,縮小帘不,移除。動(dòng)畫的一生也就過完了

一切又回歸了平靜......

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末杨箭,一起剝皮案震驚了整個(gè)濱河市寞焙,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌互婿,老刑警劉巖捣郊,帶你破解...
    沈念sama閱讀 212,816評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異慈参,居然都是意外死亡呛牲,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,729評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門驮配,熙熙樓的掌柜王于貴愁眉苦臉地迎上來娘扩,“玉大人,你說我怎么就攤上這事壮锻∷雠裕” “怎么了?”我有些...
    開封第一講書人閱讀 158,300評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵猜绣,是天一觀的道長灰殴。 經(jīng)常有香客問我,道長掰邢,這世上最難降的妖魔是什么牺陶? 我笑而不...
    開封第一講書人閱讀 56,780評(píng)論 1 285
  • 正文 為了忘掉前任擅羞,我火速辦了婚禮,結(jié)果婚禮上义图,老公的妹妹穿的比我還像新娘减俏。我一直安慰自己,他們只是感情好碱工,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,890評(píng)論 6 385
  • 文/花漫 我一把揭開白布娃承。 她就那樣靜靜地躺著,像睡著了一般怕篷。 火紅的嫁衣襯著肌膚如雪历筝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,084評(píng)論 1 291
  • 那天廊谓,我揣著相機(jī)與錄音梳猪,去河邊找鬼。 笑死蒸痹,一個(gè)胖子當(dāng)著我的面吹牛春弥,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播叠荠,決...
    沈念sama閱讀 39,151評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼匿沛,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了榛鼎?” 一聲冷哼從身側(cè)響起逃呼,我...
    開封第一講書人閱讀 37,912評(píng)論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎者娱,沒想到半個(gè)月后抡笼,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,355評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡黄鳍,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,666評(píng)論 2 327
  • 正文 我和宋清朗相戀三年推姻,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片际起。...
    茶點(diǎn)故事閱讀 38,809評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡拾碌,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出街望,到底是詐尸還是另有隱情校翔,我是刑警寧澤,帶...
    沈念sama閱讀 34,504評(píng)論 4 334
  • 正文 年R本政府宣布灾前,位于F島的核電站防症,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蔫敲,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,150評(píng)論 3 317
  • 文/蒙蒙 一饲嗽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧奈嘿,春花似錦貌虾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至叶圃,卻和暖如春袄膏,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背掺冠。 一陣腳步聲響...
    開封第一講書人閱讀 32,121評(píng)論 1 267
  • 我被黑心中介騙來泰國打工沉馆, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人德崭。 一個(gè)月前我還...
    沈念sama閱讀 46,628評(píng)論 2 362
  • 正文 我出身青樓斥黑,卻偏偏與公主長得像,于是被迫代替她去往敵國和親接癌。 傳聞我的和親對象是個(gè)殘疾皇子心赶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,724評(píng)論 2 351

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

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件缺猛、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,066評(píng)論 4 62
  • 中學(xué)時(shí)代老班為激勵(lì)我們發(fā)憤圖強(qiáng),曾引用到“生前何必久睡,死后定當(dāng)長眠”椭符,腦中直接竄出一句“臣妾做不到袄罅恰!”我這...
    做一個(gè)開心的小可愛閱讀 291評(píng)論 1 0
  • “回憶慢慢停格濃縮销钝,念舊是我的溫柔有咨。” 海外飛鴻今時(shí)至蒸健, 循環(huán)往復(fù)踏歌聲座享。 如蘭氣質(zhì)空幽谷, 比仙才情御曉風(fēng)似忧。 岸...
    莫小北xm閱讀 269評(píng)論 0 1
  • 教室喧喧囂囂 腳步話聲不絕 蕩蕩然飄入耳 緊張激動(dòng)雀躍 此情皆亦非己 何以此時(shí)此地
    西行雪閱讀 184評(píng)論 0 0
  • 博為峰小博老師: CardLayout布局管理器非常簡單,它將容器中的每一個(gè)組件當(dāng)作一個(gè)卡片渣叛,一次僅有一個(gè)卡片可見...
    博為峰51Code教研組閱讀 118評(píng)論 0 0