Basic Xcode Programming V : Table View Part I
จริงๆ แล้วการเขียนในหัวข้อ Table View มีความซับซ้อนพอสมควรนะครับ มันต้องมีเรื่องที่ต้องทำความเข้าใจก่อนมากพอสมควรเลยทีเดียว แต่ผมจะพยายามอธิบายให้มันเข้าใจง่ายๆ ที่สุดนะครับ สำหรับบทความนี้เรามาทำรู้จักกับ Table View คร่าวๆ กันก่อนครับ
จริงๆแล้ว Method Dealloc เป็นระบบบริหารจัดการพื้นที่ในหน่วยความจำนั่นเองครับ ซึ่งมีหน้าที่ในการยกเลิกการจองพื้นที่ในหน่อยความจำสำหรับ Object ที่เราไม่ได้ใช้งานแล้วนั่นเอง ( ทำหน้าที่ตรงกันข้ามกับ @synthesize นั่นเองครับ )
## อธิบาย Code ##
ลองค่อยๆมาทำความเข้าใจ ในแต่ละส่วนน่ะครับ
แสดงจำนวนแถวที่ต้องการจะแสดงในแต่ละ Section ใน TableView ( โดยปกติ Table View จะตั้งค่ามาตรฐานไว้ 1 Section ซึ่งอยากจะกำหนดจำนวน Section ก็จะไปแก้ไขในอีก Method หนึ่งครับ )
- สร้าง New Project เลือก Single View Application
- ตั้งชื่อ Project โดยไม่เลือกเครื่องหมายถูกแม้แต่อันเดียว
- ไปที่ Interface Builder นำ Table View Object มาวาง
- ไปที่ ViewController.h เปลี่ยนแปลง Code ให้เป็นดังต่อไปนี้
## อธิบาย Code ##
@interface ViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>
เป็นการบอกให้ทราบว่า ViewContoller นี้จะมีการเรียกใช้งาน TableViewDataSource และ TableViewDelegate ส่วนมันคืออะไร ใช้งานอย่างไรขอละไว้ในฐานที่เข้าใจก่อนนะครับ
## อธิบาย Code ##
- ไปที่ ViewController.m เปลี่ยนแปลง Code ให้เป็นดังนี้
## อธิบาย Code ##
- (void)dealloc {
[super dealloc];
[self.myTableView release];
}
จริงๆแล้ว Method Dealloc เป็นระบบบริหารจัดการพื้นที่ในหน่วยความจำนั่นเองครับ ซึ่งมีหน้าที่ในการยกเลิกการจองพื้นที่ในหน่อยความจำสำหรับ Object ที่เราไม่ได้ใช้งานแล้วนั่นเอง ( ทำหน้าที่ตรงกันข้ามกับ @synthesize นั่นเองครับ )
- เพิ่มเติม Code อีกนะครับ
เยอะจังเลย มันคืออะไรกันละเนี่ย T_T |
## อธิบาย Code ##
ลองค่อยๆมาทำความเข้าใจ ในแต่ละส่วนน่ะครับ
#pragma mark - UITableVeiwDAtasource
เป็นคำสั่งที่จะช่วยจัดหมวดหมู่ของ Method ที่อยู่ใน File เพื่อให้สะดวกสำหรับการค้นหาใน Jump Bar
ยังจำ Jump Bar ได้ไหมครับ |
สิ่งที่เพิ่มขึ้นมาใน Jump Bar หลังจากในคำสั่ง #Pragma mark |
- (NSInteger) tableView : (UITableView *) tableView numberOfRowsInSection : (NSInteger) section {
return 10; }
แสดงจำนวนแถวที่ต้องการจะแสดงในแต่ละ Section ใน TableView ( โดยปกติ Table View จะตั้งค่ามาตรฐานไว้ 1 Section ซึ่งอยากจะกำหนดจำนวน Section ก็จะไปแก้ไขในอีก Method หนึ่งครับ )
- (UITableViewCell *) tableView : (UITableView *) tableView cellForRowAtIndexPath :(NSIndexPath*) indexPath {
static NSString *MyIdentifier = @"MyIdentifier";
// Try to retrieve from the table view a now-unused cell with the given identifier.
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier : MyIdentifier];
// If no cell is available, create a new one using the given identifier.
if (cell == nil) {
// Use the default cell style.
cell = [[[UITableViewCell alloc] initWithStyle : UITableViewCellStyleSubtitle
reuseIdentifier : MyIdentifier] autorelease];
}
// Set up the cell.
cell.textLabel.text = @"text";
cell.detailTextLabel.text = @"detail";
return cell;
}
จริงๆแล้วในส่วนนี้ จะให้เข้าใจเกี่ยวกับตรงส่วน // Set up the cell. ก่อนน่ะครับ เป็นส่วนที่สามารถใส่คำสั่งต่างๆ เพื่อกำหนดได้ว่าในแต่ละ Cell ให้แสดงอะไรบ้าง โดยที่เราสามารถดูได้ว่า Cell ทำอะไรได้บ้างโดยการพิมพ์ cell. แล้วลองกด esc ดูครับ XCode จะแสดงขึ้นมาให้ดู
0 ความคิดเห็น:
แสดงความคิดเห็น