Iphone UITableview从不同UINavigationController显示时更改高度(';更多';)
当从UINavigationController中的UITableViewController显示时,UITableViewController的tableView更改其帧位置时,我遇到了一个问题。当从常规选项卡显示时,框架很好。但是,如果我从“更多”部分移动并显示UITableViewController,tableview将向下移动到与导航栏相同的高度(我不希望这样)。当我测试正确和非正确位置之间的运行时帧坐标时,它显示为相同的(0.0、0.0、320.0、411.0)。 只有在我在一个导航控制器中显示tableView,然后在另一个导航控制器中移动并显示它之后,才会出现此问题,例如将“更多”VC移到选项卡,或将选项卡移到“更多”VC 这里发生了什么,我该怎么解决 最后一张图片是应用程序启动时的样子,应该是这样的,导航栏正下方的表格视图。但是,在前两个示例中,您可以看到tableview已下移 提前谢谢Iphone UITableview从不同UINavigationController显示时更改高度(';更多';),iphone,ios,uitabbarcontroller,uitableview,Iphone,Ios,Uitabbarcontroller,Uitableview,当从UINavigationController中的UITableViewController显示时,UITableViewController的tableView更改其帧位置时,我遇到了一个问题。当从常规选项卡显示时,框架很好。但是,如果我从“更多”部分移动并显示UITableViewController,tableview将向下移动到与导航栏相同的高度(我不希望这样)。当我测试正确和非正确位置之间的运行时帧坐标时,它显示为相同的(0.0、0.0、320.0、411.0)。 只有在我在一个导航
重置表视图nib文件的自动调整大小属性 你可以在里面找到它:
工具>属性检查器首先使用XIB在视图中获取UITableView。然后添加导航栏并调整tableview的大小。你会得到你真正想要的
如果您仍然发现任何问题,请告诉我。如果您可以显示您的代码,或截图进行设置,这将非常容易。根据我的经验,创建UITableViewController实例并在Interface Builder中连接它们将扩展到整个屏幕 如何将其连接到“更多”选项卡?如果它位于两个选项卡中,并且您正在执行任何动态操作,请检查UITableViewController类viewDidLoad方法。您不应该添加/删除/重新添加表,除非它们是单独的实例 有些地方需要检查:
但愿我能多帮点忙。希望查看您的设置/代码。UITableViewController具有这样的行为,它总是尝试以最佳方式适应屏幕大小。UITableViewController非常适合全屏tableview,但我建议不要使用UITableViewController,而是通过同时实现数据源和委托来实现TableViewController。有些人确实将ResizeSubView设置为NO并解决了他们的问题,但我真的建议您自己重新创建控制器,这并没有太多工作。我能够解决这个问题。事实证明,当您将UINavigationController中的UITableView控制器移动到moreNavigationController时,contentInset和ScrollIndicationSet的“top”变量中会添加44个像素。我不知道为什么会发生这种情况,也不知道为什么tableView离开“moreNavigationController”时这44个像素没有被删除,但下面是答案。我在VIEWWILLISE中调用这两行
self.tableView.contentInset = UIEdgeInsetsMake(44.0, 0.0, 0.0, 0.0);
self.tableView.scrollIndicatorInsets = UIEdgeInsetsMake(44.0, 0.0, 0.0, 0.0);
当您单击更多导航按钮或更多其他选项卡时,会产生此问题。这些图片是同一页的(左边有两个显示完成按钮,但有一个显示更多导航按钮)。也许可以添加一些你正在使用的代码。从显示新视图的操作开始,然后ViewDiLoad或viewWill/DidDisplay将显示该表视图的代理。不过,这就是问题所在,我没有手动设置任何自定义项。我已经用普通的UITableViewController和UIViewController尝试过了。他们都这样做。所有视图控制器都可以。这可能是iOS 4.2.1的一个bug吗?我认为这不是一个错误,因为某些不确定的原因,某些时候会出现未失效的行为。我想您需要在每次操作后设置表的框架。或者您可以尝试删除此表并为视图创建新表,这可能会对您有所帮助。Ishu,您能给我举一个删除表并为视图创建新表的示例吗?如何?你是说尺码检查员吗?