【改:如果你把行數預設成0的話 他會自適應行數 也就是說 你內容有多少行他就多少行 但是frame還是要自己設定】
計算行數
【計算移動距離不需要通過行數。】
str為輸入內容 move 為算出 當前frame相對於單行是移動了多少。[用於給其他受影響的view修改orgain.x]
cgsizesize=[str sizewithfont:[
uifont
systemfontofsize:
17.0
] constrainedtosize:cgsizemake(
210.0f
,1000.0f
) linebreakmode:
];
//將str字串以sizewithfont 的字型模式單詞切割模式傳入指定的大小的size[寬度超過210就換行]內所需要的實際高度和寬度。
//【傳入的size 為限制值,高度和寬度最大只能為傳入寬度大小】
cgsizesize2=[
@"1"
sizewithfont:[
uifont
systemfontofsize:
17.0
] constrainedtosize:cgsizemake(
210.0f
,1000.0f
) linebreakmode:
];int move=size.height-size2.height
總結一下:
【在stroyboard裡面設定lable行數為0,既可自動換行】
3.你需要根據你內容的行數修改你的布局。包括自己的frame.size.height,被影響的frame.origen.y[計算出 位移(當前size-@""的size),然後給+被影響的]。
4.你還要修改cell的高度。
5.確定不要使用autolayout。
動態調整label和cell的高度
根據文字內容長度動態調整label和cell的高度 1 首先獲得文字資訊所需要的size cgsizetitlesize question.title sizewithfont uifontsystemfontofsize 17 constrainedtosize cgsizemake 209,10...
關於label的強制換行
第一種方法是直接引用樣式 label3 runat server width 350px text bind y question cssclass label 第二種方法 檢視頁面原始碼發現,解析後的label標籤為 所以在頁面新增樣式 label3 runat server width 350p...
C WinForm中的Label換行方法
第一種是把label的autosize屬性設為false,手動修改label的大小.這樣的好處是會因內容的長度而自動換行,但是當內容的長度超過所設定的大小時,多出的內容就會無法顯示.因此,這種方法適合於基本確定內容長度的時候使用.第二種是把label的dock設為fill,同時將autosize屬性...