Ipad 在使用UITableViewController时,我应该如何实现非反弹UITableView?

Ipad 在使用UITableViewController时,我应该如何实现非反弹UITableView?,ipad,uiscrollview,uitableview,Ipad,Uiscrollview,Uitableview,在我正在开发的iPad应用程序中,我想显示一个不滚动和不反弹的UITableView(这意味着尝试向上或向下滚动tableview不会显示滚动和快速恢复效果)。我之所以要这样做,是因为UITableView包含固定数量的单元格,并在单元格数量之间平均分配可见空间(在tableView:heightForRowAtIndexPath:)。不需要滚动。UITableView和UIScrollView是用户不需要知道的实现细节 UIScrollView有一个booleanbounces属性,如果我可以

在我正在开发的iPad应用程序中,我想显示一个不滚动和不反弹的UITableView(这意味着尝试向上或向下滚动tableview不会显示滚动和快速恢复效果)。我之所以要这样做,是因为UITableView包含固定数量的单元格,并在单元格数量之间平均分配可见空间(在
tableView:heightForRowAtIndexPath:
)。不需要滚动。UITableView和UIScrollView是用户不需要知道的实现细节

UIScrollView有一个boolean
bounces
属性,如果我可以访问UIScrollView实例,我可以将该属性设置为
NO

我希望UITableViewController的UITableView实例具有UIScrollView的superview。但是,在我的UITableViewController子类中,
self.view.superview
self.tableView.superview
都是零。我已经在我的UITableViewController的
-initWithStyle:
-viewDidLoad
,和
-viewWillDisplay:
方法中确定了这一点

是否有其他方法访问包含我的UITableView的UIScrollView?我认为这种技术所涉及的代码最少,尽管没有从UITableViewController或UITableView直接访问UIScrollView实例


或者我应该将UIViewController而不是UITableViewController子类化,并实例化未包含在UIScrollView中的UITableView?还是我忽略了另一个选项?

UITableView
UIScrollView
的子类,因此
UITableView
具有反弹属性(所有
UIScrollView
具有的属性)。
因此,要取消反弹,您需要编写
self.tableView.bounces=NO。要取消滚动,
self.tableView.scrollEnabled=NO

当然,您可以使用Interface Builder设置此属性。

此外,Apple不鼓励在UIScrollView中使用UIScrollView,因此如果您在UIScrollView中有UITableView,您可能会看到奇怪的滚动行为。谢谢;我没想到会这样!我还在Mac OS X上使用了NSTableView,它不是NSScrollView子类
self.tableView.scrollEnabled=否
-initWithStyle:
,它工作得很好!可能重复的