在XCode中将单元格添加到表视图(UITableView)
发布时间:2020-12-14 17:37:35 所属栏目:百科 来源:网络整理
导读:我是X-Code的新手,刚刚开始研究我的第一个应用程序.我正在使用Storyboard.在导航控制器场景中,我添加了一个带有两个单元格的MasterViewController,它导致两个DetailViewControllers(Detail1 Detail 2). 列数= 1 列数= 2 我在属性检查器中为单元格添加了重用
我是X-Code的新手,刚刚开始研究我的第一个应用程序.我正在使用Storyboard.在导航控制器场景中,我添加了一个带有两个单元格的MasterViewController,它导致两个DetailViewControllers(Detail1& Detail 2).
>列数= 1 我在属性检查器中为单元格添加了重用指示符,并在故事板中建立了连接. 但是当我运行应用程序时,我只能看到第一个单元格x2. 当我查看MasterViewController.m时,我可以看到第一个单元格的代码,但我不明白如何插入第二个单元格等! 我知道解决方案很简单,我现在一直在寻找3天的答案,我感到愚蠢,但我现在真的需要一些帮助, 有人可以帮我理解如何在代码中添加更多单元格,并且可能会更多地了解表格视图代码吗? 这是目前为止的表视图的代码: #pragma mark - Table view data source - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { // Return the number of sections. return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { // Return the number of rows in the section. return 2; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Formal"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; // Configure the cell... return cell; } /* // Override to support conditional editing of the table view. - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath { // Return NO if you do not want the specified item to be editable. return YES; } */ /* // Override to support editing the table view. - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath { if (editingStyle == UITableViewCellEditingStyleDelete) { // Delete the row from the data source [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath][withRowAnimation:UITableViewRowAnimationFade]; } else if (editingStyle == UITableViewCellEditingStyleInsert) { // Create a new instance of the appropriate class,insert it into the array,and add a new row to the table view } } */ /* // Override to support rearranging the table view. - (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath { } */ /* // Override to support conditional rearranging of the table view. - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath { // Return NO if you do not want the item to be re-orderable. return YES; } */ #pragma mark - Table view delegate - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { // Navigation logic may go here. Create and push another view controller. /* <#DetailViewController#> *detailViewController = [[<#DetailViewController#> alloc] initWithNibName:@"<#Nib name#>" bundle:nil]; // ... // Pass the selected object to the new view controller. [self.navigationController pushViewController:detailViewController animated:YES]; */ } @end 解决方法
假设你有一个名为arr的数组.
然后,当调用numberOfRowsInSection时,您必须返回数组中的对象数. - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { // Return the number of rows in the section. return [arr count]; } 您的cellForRowAtIndexPath委托方法应如下所示,以打印出数组中的字符串. - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { static NSString *CellIdentifier = @"Formal"; UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; if (cell == nil) { cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease]; } // Configure the cell. cell.textLabel.text = [arr objectAtIndex:indexPath.row]; return cell; } 希望这可以帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |