技术CTO-关注编程入门知识,提供编程入门教程

您的位置: 首页 > 移动开发 > ios > 正文

UItableView如何调整位置

来源: 技术CTO 阅读:

我用xib创建的tableView ,现在我用代码创建了一个导航栏,导航栏把table第一行遮住了怎么调整table的位置,求解xib的能调整吗。

能调整,在导航栏加载时,手动调整tableView的frame就可以
[tableView setFrame:CGRectMake(100.0f, 100.0f, 100.0f, 100.0f)];
试了。没反应啊
来点人啊
在tableview的父视图控制器里面的ViewDidLoad方法中设置tableview的frame
引用 4 楼  的回复:
在tableview的父视图控制器里面的ViewDidLoad方法中设置tableview的frame

或者在loadView方法里设置你创建的tableview的frame
是viewDidload但是不行啊没变化
xib数据连接方法
  table---tableview
  view----tableview
  datasource---tableview
  delegate ----tableview
在xib里面添加一个navagation controller(程序里面还要自己添加,这里只是说明有一个导航,占去了一定的空间),再在xib里面添加一个tableview,这样就会好的,你可以试试
估计是楼主进行位置调整的代码放错位置了,在viewDidLoad中进行设置。可以调试,看看你设置的地方,view指针是不是0x0,空指针?
在xib里再添加一个view,把tableview放进新view中,调整新view的位置。。
我看你还是把这个xib删了重新来过。 导航就用Navigation吧,再把tableview拖进去,应该不会遮挡吧。
要不就在 viewDidLoad方法里面 setFrame一下。
self.viewController = [[[UITableviewController alloc] initWithStyle:UITableViewStyleGrouped] autorelease];
    UINavigationController *nav = [[[UINavigationController alloc] initWithRootViewController:self.viewController] autorelease];
self.window.rootViewController = nav;

试试看。
在xib中选择Top Bar为Navigation Bar
...我在你另一个帖子里有回答哦,http://topic.csdn.net/u/20121009/09/c012604c-48ff-413e-b57a-4ec05f90d283.html?84197,居然发了两个帖子
肯定是调整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;
貌似必须要在一个UIViewController里面加UITableView才可以改变其位置噢亲~
导航栏的高度是44,设置UITableView 的frame时的y值为44
在xib中选择Top Bar为Navigation Bar
你的viewcontroller是不是uitableviewcontroller?如果是,你肯定调整不了他的tableview的frame,你把viewcontroller换为viewcontroller就可以了,然后那些个委托自己加,就不细说了
没有一个回答正确的,这个问题似乎无解
XCODE 5,IOS7
路过,楼主问题解决了嘛?
只要你的导航栏设置的背景图片尺寸高度不超过44,就不会有这个问题的存在。即使在IOS7下的模拟器上显示遮挡,但编译到真机,是没有遮挡问题的。
用个简单点的,创建一个UIViewController,加个导航,再拖个tableview就行了
遇到 同样的问题,不知道楼主解决这个问题没有
这个问题我能解决,楼主分给我可好\
在tableView的controller里重写viewWillLayout方法,加入tableView.frame = CGRectMake(0, 44.f, self.view.bounds.size.width, self.view.bounds.size.height);

^_^ 如果您热爱技术、热爱编程,想与更多的朋友一起交流学习,欢迎加入本站官方QQ群:345733473 ^_^