在表视图中显示阵列时,iOS模拟器问题未显示索引0中的列表

在表视图中显示阵列时,iOS模拟器问题未显示索引0中的列表,ios,iphone,uitableview,xcode6.3,Ios,Iphone,Uitableview,Xcode6.3,我使用的是xcode6.3 我在SimpleViewTable.m文件中创建了一个数组 tableData = [NSArray arrayWithObjects:@"Egg Benedict", @"Mushroom Risotto", @"Full Breakfast", @"Hamburger", @"Ham and Egg Sandwich", @"Creme Brelee", @"White Chocolate Donut", @"Starbucks Coffee", @"Vegeta

我使用的是
xcode6.3

我在
SimpleViewTable.m
文件中创建了一个数组

tableData = [NSArray arrayWithObjects:@"Egg Benedict", @"Mushroom Risotto", @"Full Breakfast", @"Hamburger", @"Ham and Egg Sandwich", @"Creme Brelee", @"White Chocolate Donut", @"Starbucks Coffee", @"Vegetable Curry", @"Instant Noodle with Egg", @"Noodle with BBQ Pork", @"Japanese Noodle with Pork", @"Green Tea", @"Thai Shrimp Cake", @"Angry Birds Cake", @"Ham and Cheese Panini", nil];
当我运行程序时

在模拟器屏幕中,我得到了结果,但它是从
@“蔬菜咖喱”
开始的

它不显示索引0的结果

当我单击表格项目并向下拖动时,我会看到前面的项目。 它再次向上移动


请给我一个建议,这样我就可以解决这个问题。

正如您提到的,当您向下拖动表视图时,您可以看到索引0记录,然后它再次处于隐藏状态;表示表视图的
contentOffset
contentInset
有问题。 在
视图中保留断点显示:
并检查
contentOffset
是否设置为非零值。如果如下所示,将其重置为零。
contentInset
属性也是如此

self.tableView.contentOffset = CGPointMake(0, 0);// If class is child of UITableViewController
[self.tableView setContentInset:UIEdgeInsetsMake(0, 0, 0, 0)];

  • 是的,我们也遇到了同样的问题并找到了解决办法。你需要 重新加载tableview两次:-

    请参见下面的代码示例:-

    [tableview重新加载数据]

    [自执行选择器:@选择器(刷新数据),对象:nil 后延迟:0.0]

    -(void)刷新数据{[tableview重载数据];}


您是否可以执行初始化阵列的操作,然后再次抛出反馈发生了什么?tableData=[[NSArray alloc]initWithObjects:@“A”,“B”,nil]您使用的是包含UITableView的UIViewController还是完整的UITableViewController?还有,你在桌子上用了一些HeaderViews吗?@Rajan,我用[[NSArray alloc]试过了initWithObjects…但我也遇到了同样的问题。@It实际上,我使用UITableView显示了一个产品列表,显示在数组中。Hi Gandalf,谢谢你的回答。你能告诉我如何将contentInset和contentOffset设置为0检查编辑过的答案,但首先确保你的
contentOffset
确实是非零的。这是很明显的原因,但代码中可能有其他错误。
objTableView.contentOffset = CGPointMake(0, 44);// If you are using a UITableView object explicitly
[objTableView setContentInset:UIEdgeInsetsMake(0, 0, 0, 0)];