我正在创建具有表格视图的应用程序,但我无法在表格视图中添加数据
我在.h文件中名为NewTable的.xip文件中有表视图,这是我在.m文件中使用它的代码(listData它的数组):
- (void)viewDidLoad{
[super viewDidLoad];
[self TestTable];
}
-(void)TestTable{
NSArray *array = [[NSArray alloc] initWithObjects:@"Vishal",@"Vinod",@"Sachin",@"Nilesh",@"Balu",@"Amrita",
@"susho",@"Akash",@"Nil",@"Lop",@"Koi",@"Absoulate",@"Dwalin",
@"Fili",@"Kili",@"Oin",@"Gloin",@"Bifur",@"Bofur",@"Bombur",nil];
self.listData = array;
[array release];
self.listData= array;
[self.NewTable reloadData];
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return [self.listData count];
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *SimpleTableIdentifier = @"SimpleTableIdentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:
SimpleTableIdentifier];
if(cell == nil){
cell = [[UITableViewCell alloc] autorelease];
}
NSUInteger row = [indexPath row];
cell.textLabel.text = [listData objectAtIndex:row];
return cell;
}
{{{{{{{{{{{当我在cellForRowAtIndexPath
添加nslog时,它不会在consol中打印任何内容!}}}}}}}}}}}}
{{{{{{{{{{{当我在cellForRowAtIndexPath
添加nslog时,它不会在consol中打印任何内容!}}}}}}}}}}}}
{{{{{{{{{{{当我在cellForRowAtIndexPath
添加nslog时,它不会在consol中打印任何内容!}}}}}}}}}}}
答案 0 :(得分:0)
这是我通常用来初始化数据的内容。
-(void)viewDidLoad {
self.listData = [[NSMutableArray alloc] initWithObjects:@"Vishal",@"Vinod",...,nil];
[super viewDidLoad];
}
虽然,我认为您的问题是分配给不再保留的数组。
答案 1 :(得分:0)
如果您使用的是UIViewController
而不是UITableViewController
,则需要确保您的viewController符合UITableViewDataSource
和UITableViewDelegate
@interface MyViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>
接下来,您需要将此视图控制器实际设置为tableView的dataSource和delegate 您可以通过将鼠标从tableView拖动到文件的所有者(即MyViewController)来完成此操作 或者在代码中执行此操作:
- (void)viewDidLoad
{
[super viewDidLoad];
self.NewTable.dataSource = self;
self.NewTable.delegate = self;
}
同样在cellForRowAtIndexPath
中,更改行
cell = [[UITableViewCell alloc] autorelease];
带
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:SimpleTableIdentifier] autorelease];