Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/106.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 为什么两个UITableView捕捉到不同的原点?_Ios_Uitableview - Fatal编程技术网

Ios 为什么两个UITableView捕捉到不同的原点?

Ios 为什么两个UITableView捕捉到不同的原点?,ios,uitableview,Ios,Uitableview,我有一个带三个选项卡的UITabBarController,可以提供一些常见数据的不同视图。每个选项卡中都有一个UITableViewController子类。其中一个显示一个表,其中只有一个部分(或没有部分,具体取决于您如何查看),即我不覆盖-(NSInteger)numberOfSectionsInTableView:(UITableView*)tableView。另外两个有多个部分 如果我下拉并释放单截面表格,它的行为与我预期的一样-一些空白区域进入视图,但它会回缩,以便第一个项目的上边缘

我有一个带三个选项卡的UITabBarController,可以提供一些常见数据的不同视图。每个选项卡中都有一个UITableViewController子类。其中一个显示一个表,其中只有一个部分(或没有部分,具体取决于您如何查看),即我不覆盖
-(NSInteger)numberOfSectionsInTableView:(UITableView*)tableView
。另外两个有多个部分

如果我下拉并释放单截面表格,它的行为与我预期的一样-一些空白区域进入视图,但它会回缩,以便第一个项目的上边缘位于可见区域的顶部:

(左侧为中拖,右侧为释放后)

如果我对mutli section表执行相同操作,它会弹回到屏幕顶部,隐藏第一节标题和第一项:

(同样,左侧为中拖,右侧为释放后)


我已经覆盖了各种行、节、标题等方法,但我不知道如何造成这种视觉偏移。这是已知的“功能”吗?

该问题是滥用控制器的结果。我最初有一个
UINavigationController
包含一个
UITabBarController
,其中包含三个
UITableView
s。正确的顺序是一个
uitabarcontroller
包含三个
UINavigationController
,每个都包含一个
UITableView

行为不正常的一个看起来像tableview.scrollview.contentInset属性,但尚未设置以确保内容不会在导航栏下消失。可能只是在xib中缺少了一个勾选框,用于顶部栏项下的内容。这是一个有趣的想法,但这些视图是用代码创建的-我也不设置/修改插图。但是,如果我修改了偏移量(对于中间类),这两种情况都会按请求的量移动,或者换句话说,为了看起来正确,普通列表应该没有插入,但是分段列表应该有一个等于状态栏+导航栏的插入。我可能会尝试切换到I.B.IB,但会对以下内容有所帮助:)祝你好运。如果我想到其他任何东西,我会发回。你是使用标题还是单元格作为标题?我这样问是因为我注意到页眉没有粘在顶部。如果它们确实是标题,那么在添加到视图时,很可能会导致表位于选项卡栏下。它们是标准标题-我在“配置表视图”中实现了所有UITableViewDataSource方法,但没有对外观进行任何更改。我刚刚为一个有问题的表(因此没有分区)列出了这些内容,但它仍然会跳回屏幕顶部,而不是可见区域的顶部。因此,我交换了控制器添加到其包含的UITabBarController的顺序,始终是第一个行为正确的控制器,随后的控制器重置得太高。我想我需要研究带有tabbar的uinavigationcontroller。