計算改變行距的label高度

2021-07-11 13:47:28 字數 2356 閱讀 9968

//改變行距  

textstr:uilabel的text

-(void

)setspaceline:(

uilabel

*)label string:(

nsstring

*)textstr

/**

_str :         要現實的

字串_font :        字型

_labwidth :    lab最大寬度

_linespacing : 行間距

_numberoflines :   顯示行數

*/

//計算改變行距的

label高度

+(cgsize

)labsizewithstr:(

nsstring

*)_str font:(

uifont

*)_font labwidth:(

int)_labwidth linespacing:(

int)_linespacing numberoflines:(

int)_numberoflines

uilabel

*clabel = [[

uilabel

alloc

]initwithframe

:cgrectmake(0

,0, _labwidth,

0)];

[clabel

setfont

:_font];

[clabel

setnumberoflines

:_numberoflines];

nsmutableparagraphstyle

* paragraphstyle = [[

nsmutableparagraphstyle

alloc

]init

];[paragraphstyle

setlinespacing

:_linespacing];

[clabel

setattributedtext

:[[nsattributedstring

alloc

]initwithstring

:_str

attributes:@

]];[clabel

sizetofit

];cgsize

returnsize = clabel.

size

;clabel =

nil;

return

returnsize; }

uilabel

*contentlabel2=[[

uilabel

alloc

]init

];contentlabel2.

textcolor

=[uicolor

colorwithred:65

/255.0

green:65

/255.0

blue:65

/255.0

alpha:1

];nsstring

* text2=[

dataarray

objectatat:1

][@"sciencecontent"];

contentlabel2.font

=[uifont

systemfontofsize

:12];

//呼叫設定行距方法

[self

setspaceline

:contentlabel2

string

:text2];

//呼叫計算高度方法

cgsize

size2=[

jklillintrocontroller

labsizewithstr

:text2

font

:[uifont

systemfontofsize:12

]labwidth

:screen_width-41

linespacing:6

numberoflines:0

];contentlabel2.

frame

=cgrectmake(20

, themelabel2.

frame

.origin.y

+themelabel2.

height+15

, size2.

width

, size2.

height

);[headview

addsubview

:contentlabel2];

iOS 計算label的寬度和高度

根據寬度求高度 content 計算的內容 width 計算的寬度 font字型大小 cgfloat getlabelheightwithtext nsstring text width cgfloat width font cgfloat font context nil return rect....

動態調整label和cell的高度

根據文字內容長度動態調整label和cell的高度 1 首先獲得文字資訊所需要的size cgsizetitlesize question.title sizewithfont uifontsystemfontofsize 17 constrainedtosize cgsizemake 209,10...

改變tableViewCell高度的方法

1.最常用方法,重寫一下方法 float tableview uitableview tableview heightforrowatindexpath nsindexpath indexpath 但是這種方法不能靈活地解決問題,因為你只能固定在這個位置改,本人就試過不會在此獲取到想要地高度。2.比...