iOS三種讓UILabel中的text居上的方式

2021-07-25 10:02:56 字數 882 閱讀 3053

第一種自適應,但是該方法已廢棄,仍可用

cgrect frame = yourlabel.frame;

cgsize size = [yourlabel.text sizewithfont:yourlabel.font constrainedtosize:cgsizemake(frame.size.width, 5000)];

frame.size = cgsizemake(frame.size.width, size.height);

yourlabel.frame = frame;

第二種自適應

cgrect rect = [titlelabel.text boundingrectwithsize:titlelabel.frame.size options:(nsstringdrawinguseslinefragmentorigin) attributes:[nsdictionary dictionarywithobjectsandkeys:titlelabel.font,nsfontattributename, nil] context:nil];

titlelabel.frame = cgrectmake(x,y, w, rect.size.height);

第二種:

此方法更加簡單粗暴,但是很有效。其方法是在文字後面加多一些\n。

需要注意的是,\n後還得加至少乙個空格,否則多餘的\n會被uilabel忽略。從這一點上看,uilabel似乎又過於「聰明」了。

該方法的**如下:

for(

inti=0

;i<

newlinestopad;i

++)self

.text=[

self.:@

"\n "

];

ios中的三種彈框

目前為止,已經知道3種ios彈框 1 系統彈框 底部彈框 uiactionsheet 1 用法 處理使用者非常危險的操作,比如登出系統等 2 舉例 uiactionsheet sheet uiactionsheet alloc initwithtitle 確定要登出?delegate self ca...

iOS中撥打電話的三種方式

這種方式 撥打完 回不到原來的應用,會停留在通訊錄裡,而且是直接撥打,不彈出提示 下面兩種方法,打完 後還會回到原來的程式,也會彈出提示 nsstring telstring nsstring alloc initwithformat tel 186 x6979 uiwebview callwebv...

iOS中解決NSTimer迴圈引用的三種方式

今天有個人來公司面試,問了他平時在使用timer定時器時怎麼解決迴圈引用的問題。然後就得到了這樣乙個答案 weak typeof self weakself self self.timer nstimer scheduledtimerwithtimeinterval 1.0 target weaks...