1.先建立
customtableviewcell.h 和 customtableviewcell.m (注意該類繼承於:
uiviewcontroller)
在customtableviewcell.h新增以下屬性和方法
//// customtableviewcell.h
// cell高度自適應 //
// created by rimi on 15/9/2.
//#import
@inte***ce customtableviewcell : uitableviewcell
@property (nonatomic ,strong) uilabel *username; //使用者名稱
@property (nonatomic ,strong) uilabel *interduction; // 使用者簡介
@property (nonatomic ,strong) uiimageview *userimage; // 使用者頭像
- (void)setinterductiontextheight:(nsstring *)text;
@end
customtableviewcell.m
中的實現如下
//// customtableviewcell.m
// cell高度自適應
//// created by rimi on 15/9/2.
//#import "customtableviewcell.h"
@implementation customtableviewcell
// 重寫父類的 initwithstyle:(uitableviewcellstyle)style reuseidentifier:(nsstring *)reuseidentifie的方法
- (instancetype)initwithstyle:(uitableviewcellstyle)style reuseidentifier:(nsstring *)reuseidentifier
return self;
}/**
* 方法返回interduction(使用者介紹文字)的寬度 *
* @param text 使用者所介紹的文字
*/- (void)setinterductiontextheight:(nsstring *)text
context:nil].size;
frame.size.height = labelsize.height + 100;
self.frame = frame;
}/**
* username ----getter
* 懶載入
* @return 返回使用者名稱的labele
*/- (uilabel *)username
return _username;
}/**
* interduction ---getter
* 懶載入
* @return 返回用書介紹的label
*/- (uilabel *)interduction
return _interduction;
}/**
* userimage ---getter
* 懶載入
* @return 返回使用者頭像
*/- (uiimageview *)userimage
return _userimage;
}@end
至此自定義cell已經書寫完成接下來只需將其新增到檢視中去即可
2.建立
tableviewcontroller.h 和 tableviewcontroller.m檔案
這裡tableviewcontroller.h檔案中不做任何改變只需在tableviewcontroller.m檔案中做實現具體實現方式如下:
//// tableviewcontroller.m
// cell高度自適應 //
// created by rimi on 15/9/2.
//#import "tableviewcontroller.h"
#import "customtableviewcell.h"
@inte***ce tableviewcontroller ()
@property (nonatomic,strong) uitableview *tableview;
@end
@implementation tableviewcontroller
// 檢視載入
- (void)viewdidload
// 設定單元格 組數
- (nsinteger)numberofsectionsintableview:(uitableview *)tableview
// 設定每組所包含的單元格行數
- (nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section
// 很據每乙個cell返回每一行的高度
- (cgfloat)tableview:(uitableview *)tableview heightforrowatindexpath:(nsindexpath *)indexpath
// 自定義單元格的使用
- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath
// 新增資料
if (indexpath.row == 0) else if (indexpath.row == 2) else
return cell;
}/**
* tableeview getter
** @return 返回**檢視 */
-(uitableview *)tableview
return _tableview;
}@end
書寫完以上內容就算大功告成。效果就是這樣:
ios實現動態載入cell高度
也許你會遇到這樣乙個問題,或者需要這麼乙個功能。表中每個單元格的高度隨著該單元格的內容多少而變化。尤其內容不止是文字的時候 其實要實現這個功能很簡單。首先所謂的動態分配單元格高度只是效果上看起來是這樣,其實還是跟我們平常設定 單元格高度一樣,每行先分配高度。這裡就乙個demo來說說吧 要實現這個功能...
iOS實現Cell自適應高度
1.實現uitableviewdelegate中的方法 先設定cell的contentview中label根據內容自動換行 numberoflines 0 實現uitableviewdelegate中的方法 cgfloat tableview uitableview tableview estima...
ios根據內容設定cell的高度
基本思路是 先獲取該行要顯示的文字內容,根據文字計算行高 根據文字高度來設定cell高度 cgfloat tableview uitableview tableviewheightforrowatindexpath nsindexpath indexpath cgsize textsize1 tex...