剛剛在uilabel的文字的自動換行,我要打到的目的是使文字顯示在一定的區域內,保持兩行,多餘放不下的字用點代替。通常設定uilabel自動適應高度並自動換行的**如下:
cgrect frame = self.namelabel.frame;
uifont *font = [uifont systemfontofsize:15.f];
cgsize strsize = [activityname sizewithfont:font constrainedtosize:cgsizemake(frame.size.width, maxfloat)linebreakmode:nslinebreakbytruncatingtail];
self.namelabel.numberoflines = 0;
self.namelabel.frame = cgrectmake(frame.origin.x, frame.origin.y, frame.size.width, strsize.height);
self.namelabel.text = name;
我想的是既然在xib裡已經設定好了uilabel的高度,那在
constrainedtosize:cgsizemake(frame.size.width, maxfloat)
處,我將maxfloat設定為frame.size.height,應該就理想了,但是實際執行出來的結果是並沒有換行!!嘗試了幾個數值之後,我發現這個高度要稍微比frame.size.height高一些,這樣就會自動換行,達到想要的效果了!
UILabel 自動換行
實現方法 獲取uilabel的frame大小 獲取uilabel的字型大小 獲取uilabel的文字內容 根據上面的3部分資料,計算文字顯示區域大小 根據4計算的大小,實時改變uilabel的frame nsstring string 自動換行uilabel自適應啦啦啦啦啦啦啦啦 cgsize la...
iOS10 3的UILabel無法自動換行問題
今天公司專案遇到乙個問題,就是在ios10.3的系統中,使用xib建立cell,並且在cell中有乙個label是需要動態計算高度的 label.numberline 0 但是在使用fd heightforcellwithidentifier方法自動計算高度之後label依然只有一行,無法達到自動換...
UILabel 簡單實現自動換行
uilabel label uilabel alloc initwithframe cgrectzero autorelease label.font uifont systemfontofsize 15 label.numberoflines 0 0代表行數沒有最大限制 self.view add...