Custom TableViewCell
การออกแบบ TableCell ใน Table
ขั้นแรกสร้าง UITableView ขึ้นมาก่อน
หลังจากนั้นสร้าง File ใหม่โดย
Add -> New File -> Objective-C class ตรง Subclass of เลือก UITableViewCell
สร้าง Interface FIle (.xib) ออกแบบ UI
สร้าง Outlet กำหนด Property และทำ Synthesize
เข้าไปที่ FIle ViewController.m ที่มี UITableView
#import “MyTableViewCell.h”
ใน Method ของ DataSource
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath;
เราจะทำการสร้าง UITableViewCell
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
MyTableViewCell *cell = (MyTableViewCell *)[tableView dequeueReusableCellWithIdentifier:@"Cell"];
if (cell == nil) {
NSArray *cellArray = [[NSBundle mainBundle] loadNibNamed:@”TableCell” owner:self options:nil];
for (int i = 0; i < [cellArray count]; ++i) {
id obj = [cellArray objectAtIndex:i];
if ([obj isKindOfClass:[MyTableViewCell class]]) {
cell = obj;
cell.cellLabel.text = [NSString stringWithFormat:@"%d", i];
cell.backgroungImage = [UIImage imageNamed:@"cellBackgroundImage.png"];
}
}
}
return cell;
}
การกำหนดความสูงของ TableViewCell
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return 100.0f;
}
อ่านแล้วทำตามไม่ได้เลยครับ ไม่เคลียร์ตรงสร้าง uitableview และออกแบบ .xib ครับ แล้วต้องสร้าง outlet ของอะไรก็ไม่รู้ครับ จริงๆอ่านถึงบรรทัดที่สองก็ทำต่อไม่ได้แล้ว T_T
เดี๋ยวผมย้าย Blog แล้วจะอธิบายรายละเอียดให้มากขึ้นนะครับ
ออกแบบ .xib คือออกแบบหน้าตาของ Table cell ครับ
ส่วน Outlet ก็เป็นตัวเชื่อมระหว่างค่าใน Code กับหน้าตาที่เราออกแบบไว้ครับ