4

我有一个 UITableView,当表格中没有足够的单元格来保证滚动时,我不想反弹。因此,我设置-bounces为 YES 和-alwaysBounceVerticalNO。

我尝试使用 IB 设置这些属性,使用“Bounces”和“Bounce Vertically”复选框,但似乎无论我在 IB 中将 Bounce Vertically 属性设置为什么,它在运行时始终为 YES。

我宁愿能够用 IB 完全配置它,而不需要用代码设置属性。有谁知道为什么这不起作用?

4

3 回答 3

6

在 Interface Builder 中设置“垂直反弹”复选框似乎被破坏了。但是,我发现您可以在 IB 中将 alwaysBounceVertical 设置为“用户定义的运行时属性”,并且它确实有效。

(Xcode 5.0.1 iOS7 SDK)

于 2013-12-20T14:31:27.707 回答
1

您无法在界面构建器中做您想做的事。相反,您必须实现这个简单的代码来完成所需的任务。

您需要在 Interface Builder 中将“Bounces”属性设置为 NO 而不是 YES,并将“Bounce Vertically”设置为 YES。要在有更多单元格时启用反弹,您可以使用以下代码:

    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
    {
        NSInteger iRows = [arraytableData count];

        if(tableView.visibleCells.count < iRows)
        {
            tableView.bounces = YES;
        }
        else
        {
            tableView.bounces = NO;
        }
        return iRows;
    }
于 2012-11-16T06:14:18.193 回答
0

我在页面加载时遇到同样的问题,它总是垂直反弹 UITableView。经过长时间的搜索,我得到了解决方案。我正在使用 Xib 中的图像制作自定义导航栏,并将 UITableView 放在 UIView 占位符中的 UIImageView 之前。然后我改变了 UITableView 在 UIView 占位符中的位置,下面的代码适用于我self.tableView.alwaysBounceVertical = NO;
如果有人遇到这种类型的问题,请仔细检查 UITableView 在占位符中的位置。谢谢

于 2015-12-16T05:48:58.680 回答