iOS從右面開始排列圖文(實用主義)

很多時候我們總是需要一些控件從右往左排列,比方說這樣:

(Ps:紅線的位置... 這個其實就是 一個imageView + 一個label 下文所說的imageView就是指的上面的小綠點,label是指的這個100米) ?其中100米是會變化的,那么問題就來了如果是1000米,10000米,100000米....咋辦啊??好吧,1千米我們不用寫成1000米,但是要顯示 北京協(xié)和醫(yī)院 這樣的文本還是有問題的...

方法1

計算文本的長度,然后修改label frame 然后再去計算出iamgeView的位置,比方說這樣

(其中的sizeOfString..計算字體長度的一個函數(shù)而已..)這樣每次cell的出現(xiàn)都會重新計算一次位置,并且這個cell是上面我并沒有用autoLayout用的是autoresizing.如果是autoLayout估計還會有問題~~其實說白了就是自己算.

方法2

今天我在群里面問了一句上面的問題,并且提出 方法1 實現(xiàn)起來有點太雞肋了.這樣挺容易出問題的..于是我開始研究了一下autoLayout中的一個細節(jié)看下圖

先添加上一個一個約束,我們這個label的依賴肯定是設置成依賴于右面和上面的寬度和高度是不變的(暫時不變)

然后在看下面的演示



看一下鼠標停留的地方添加上對應的一個約束(autoLay相關的可以看這里autoLayout)之后是能選擇Greater Than Or Equal .. 然后我們設置imageView的約束是依賴于label


一定要注意上面設置成Greater Than Or Equal..然后代碼中寫成這個樣子

?這樣出來的效果就是:(知道為什么手機上查看的時候這張圖效果圖和下面的圖片順序不對)

效果圖

其中l(wèi)ocationDistanceLabel就是上面的label?話說方法二 已經(jīng)完成了..

方法3

這個是 iOS 7以上才能使用的一個方法NSTextAttachment.這個類是UIKit 里面實現(xiàn)圖文混排的一個類,點開對應的一個類看到了這個

NSTextAttachment

這個說明NSTextAttachment是支持image 的,那么問題就簡單多了.直接上代碼看看各位就應該明白了這個類是支持直接圖文拼接的(是不是有一種從NSURLConnection 到 AFNetWorking的感覺?).

出來的效果是這樣的...


三個富文本字符串就連接到一起了.方法3已經(jīng)完成.. 小提示:如果你是在cell上面使用方法3那么切記要注意的是cell的重用會不會一直初始化NSAttributedString和NSTextAttachment對象..如果是那么會頓卡的....


本人才疏學淺,上面的方法要是還有更好的希望能告訴我.謝謝了.另外我還是要說一下,如果是cell上面使用的話.比較推薦的方式是 方式2 , 因為方式3 雖然簡單但是貌似每次都要進行多個NSMutableAttributedString的初始化操作,這個還是很浪費資源的.

參考文章:Textkit實現(xiàn)圖文混排. 感謝重陽(博客)一起討論相關問題.

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市坛怪,隨后出現(xiàn)的幾起案子鼻吮,更是在濱河造成了極大的恐慌瞻颂,老刑警劉巖乎婿,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件悄但,死亡現(xiàn)場離奇詭異汤纸,居然都是意外死亡织狐,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門筹煮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來遮精,“玉大人,你說我怎么就攤上這事寺谤÷嘏福” “怎么了?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵变屁,是天一觀的道長眼俊。 經(jīng)常有香客問我,道長粟关,這世上最難降的妖魔是什么疮胖? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮闷板,結果婚禮上澎灸,老公的妹妹穿的比我還像新娘。我一直安慰自己遮晚,他們只是感情好性昭,可當我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著县遣,像睡著了一般糜颠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上萧求,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天其兴,我揣著相機與錄音,去河邊找鬼夸政。 笑死元旬,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的守问。 我是一名探鬼主播匀归,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼酪碘!你這毒婦竟也來了朋譬?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤兴垦,失蹤者是張志新(化名)和其女友劉穎徙赢,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體探越,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡狡赐,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了钦幔。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片枕屉。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖鲤氢,靈堂內(nèi)的尸體忽然破棺而出搀擂,到底是詐尸還是另有隱情西潘,我是刑警寧澤,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布哨颂,位于F島的核電站喷市,受9級特大地震影響,放射性物質發(fā)生泄漏威恼。R本人自食惡果不足惜品姓,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望箫措。 院中可真熱鬧腹备,春花似錦、人聲如沸斤蔓。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽附迷。三九已至惧互,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間喇伯,已是汗流浹背喊儡。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留稻据,地道東北人艾猜。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像捻悯,于是被迫代替她去往敵國和親匆赃。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,047評論 2 355

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