简单问题:tableView
和section
参数从何处传递?方法return [self.listData count];
中的实际代码甚至没有提及它们。
这是我的界面代码:
@interface Simple_TableViewController : UIViewController
<UITableViewDelegate, UITableViewDataSource>
{
NSArray *listData;
}
@property (nonatomic, retain) NSArray *listData;
@end
这就是所有的实现代码:
#import "Simple_TableViewController.h"
@implementation Simple_TableViewController
@synthesize listData;
- (void)viewDidLoad {
NSArray *array = [[NSArray alloc] initWithObjects:@"Sleepy", @"Sneezy",
@"Bashful", @"Happy", @"Doc", @"Grumpy", @"Dopey", @"Thorin",
@"Dorin", @"Nori", @"Ori", @"Balin", @"Dwalin", @"Fili", @"Kili",
@"Oin", @"Gloin", @"Bifur", @"Bofur", @"Bombur", nil];
self.listData = array;
[array release];
[super viewDidLoad];
}
- (void)viewDidUnload {
self.listData = nil;
}
- (void)dealloc {
[listData release];
[super dealloc];
}
#pragma mark -
#pragma mark Table View Data Source Methods
- (NSInteger)tableView:(UITableView *)tableView
numberOfRowsInSection:(NSInteger)section {
return [self.listData count];
}
我只是想知道方法(NSInteger)tableView: (UITableView *)numberOfRowsInSection:
如何接收这些参数?当然这到处发生;我只想了解它。
答案 0 :(得分:0)
Simple_TableViewController类可能意味着管理具有单个部分的单个表。鉴于此,tableView和section参数并不重要,因为它们只能是一个东西:分别指向表和0的指针。
答案 1 :(得分:0)
您的视图控制器类通过UITableViewDelegate和UITableViewDataSource添加对这些回调方法的支持。您正在通过<UITableViewDelegate, UITableViewDataSource>
在.h文件中添加此支持。这些类内置于Cocoa Touch框架中,您只是使用它们。当(重新)加载表时,如果已经定义了这些回调方法(有些是必需的,其他是可选的),则会调用这些回调方法。