从 UITableView 内部推送 UIViewController
嘿大家, 我有一个分段控制器,它显示一个包含 UITableView 的框架(cgrectmake)UIview。
我添加SubView 来显示表格视图,这很好。但在 didselect 方法的表视图中,我想推送一个不同的视图控制器。
但是当我这样做时它没有出现,它确实注册了触摸等。如果我添加子视图它确实会显示,但我需要真正推动这个视图。因此要填充屏幕,而不是新视图仅显示在包含表视图的 UIView 内。
我尝试通过推动表格视图,然后推动后续视图,最终的视图显示完美,但我需要将表格视图包含在屏幕上的框架中。
有什么建议可以尝试吗?
迈克尔.
Hey all,
I have a Segmented Controller which displays a framed(cgrectmake) UIview containing a UITableView.
I addSubView to display the tableview and this is fine. But inside the tableview in didselect method i want to push a different viewcontroller.
But it fails to appear when i do this, it does register the touch etc. It does display if i addsubview, but i need to really push this view. so to fill the screen rather then the new view only being displayed inside the UIView containing the tableview.
I experimented by pushing the tableview and then pushing the subsequent view, and this final view displayed perfectly, but i need the tableview to be contained in a frame on the screen.
Any suggestions to try?
Michael.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您能用一些代码来澄清您尝试过的内容吗?您提到了关于推送表视图和后续视图的实验,但视图没有被推送,只有视图控制器。只是想确保这不是您想要做的。
您还提到它注册触摸...
如果设置正确,您的 tableview 将位于其自己的 viewController 的视图中。确保 viewController 类符合 UITableViewDelegate。 (或者您决定为 UITableView 设置委托属性的任何类)
即在 myViewControllerClass.h 中:
作为您的 UITableView 委托的类还必须实现以下委托方法:
在选择行时将调用此方法表格视图。在这里,您决定将另一个 viewController 推入第一个 viewController 的视图中。
Can you clarify what you've tried maybe with some code? You mentioned your experiment about pushing the tableview and a subsequent view, but views aren't pushed, only viewcontrollers. Just want to make sure that's not what you're trying to do.
You also mentioned it registering for touch...
If things are setup correctly, your tableview is in the view of its own viewController. Make sure that viewController class conforms to UITableViewDelegate. (Or whatever class you decide to set the delegate property to for a UITableView)
i.e. in the myViewControllerClass.h:
The class which is your UITableView delegate must also implement the following delegate method:
This method will be called upon a row being selected in the tableview. This is where you decide to push another viewController into view onto your first viewController.
如果您将 tableView 添加为子视图,您是否记得将委托设置为与调用 didSelectRowAtIndexPath 相同的对象?
您还需要确保该对象是
UITableViewDelegate
if you add the tableView as a subview have you remembered to set the delegate to the same object as you're calling
didSelectRowAtIndexPath
?You also need to make sure this object is a
UITableViewDelegate