我用xib创建了一个tableview ,现在我用代码创建了一个导航栏,但是导航栏把tableview的第一行遮住了现在我想调整位
置,使用了setFrame 但是没有反应啊 。xib 中tableview的连接方式如下table-----tableviewview------tableviewdatasource---tableviewdelegate------tableview求大神指导

解决方案 »

  1.   

    tableview 放在一个view下view 链接到这个view ,你就可以自由调整你的tableview位置了。
      

  2.   

    这个view顶部加个导航条就行了,如图
      

  3.   

    肯定是调整tableView的frame了.navigationbar 的高度为44.当前tableview下移44
    CGRect frame=self.tableView.frame;
    self.tableView.frame=CGRectMake(frame.origin.x,frame.origin.y+44,frame.size.width,frame.size.height);
    如果当前的视图控制器是属于UINavigationController的控制器栈序列内,在push进这个视图后会自带一个navigationbar。显然你现在的情况不是。
    如果想让当前视图作为顶层的导航控制器,也不需要手动添加navigationbar,并调整tableview的位置。你可以将当前控制器作为导航控制器的root.
    self.viewController = [[[UITableviewController alloc] initWithStyle:UITableViewStyleGrouped] autorelease];
      UINavigationController *nav = [[[UINavigationController alloc] initWithRootViewController:self.viewController] autorelease];
    self.window.rootViewController = nav;