自定義非等高cell01 xib

2021-07-11 17:27:56 字數 1420 閱讀 4220

uitableview中有很多情況下cell的高度是不固定的,這時候cell的高度取決於內容的多少,今天介紹幾個方法來達到自定義非等高cell的效果。

lmtestcell.h中加入方法:

/** 返回cell 高度*/

-(cgfloat)cellheight;

lmtestcell.m中對應方法:

-(cgfloat)cellheight

else

}

viewcontroller.m中對應方法:

#import "viewcontroller.h"

#import "lmtestcell.h"

@inte***ce viewcontroller ()

/* 存放所有cell的高度 */

@property(nonatomic,strong)nsmutabledictionary *hegihts;

@end

@implementation viewcontroller

- (void)viewdidload

-(nsmutabledictionary *)hegihts

return _hegihts;

}- (nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section

- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath

#pragma mark - 01-自定義非等高cell-重複高,效率低

//-(cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath

//#pragma mark - 02-自定義非等高cell

-(cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath

/** 返回每一行的估計高度

只返回了估計高度,那麼就會先呼叫tableview:cellforrowindexpath:方法建立cell,在呼叫tableview heightforrowatindexpath:方法獲取cell的真實高度。

*/-(cgfloat)tableview:(uitableview *)tableview estimatedheightforrowatindexpath:(nsindexpath *)indexpath

@end

如何值通過xib自定義cell

關鍵 如下 uitableviewcell tableview uitableview tableview cellforrowatindexpath nsindexpath indexpath nsinteger row indexpath row cell.textlabel text data...

xib自定義cell之自適應高度

第一種 計算高度 label多行顯示,計算size cgsize contentsize fxafactory fc getstringsizewith str boundingrectwithsize cgsizemake kscreen width 30 maxfloat font uifont...

自定義UIview關聯xib

1.首先使用inte ce builder 新建乙個uiview的.xib檔案。2.向新建的uiview的.xib檔案新增需要的控制項。3.定義乙個繼承自uiview的派生類,將對應的view的custom class 設為你自定義的view類。4,file s ower 對應的custom cla...