UITableView 内的 UIScrollView 无法正确显示/隐藏(Xcode iPhone)

Posted

技术标签:

【中文标题】UITableView 内的 UIScrollView 无法正确显示/隐藏(Xcode iPhone)【英文标题】:UIScrollView inside a UITableView won't show/hide correctly (Xcode iPhone) 【发布时间】:2010-10-08 14:23:44 【问题描述】:

我使用 Interface Builder 将 UIScrollView 放到 UITableView 的顶部。 (做一些水平滚动。)

在代码中,我现在希望选择性地显示/隐藏该 UIScrollView。我已经在 IB 中连接了它,然后执行各种代码组合……但该区域从未消失。

self.scrView.hidden = TRUE;

或:

CGRect aFrame       = self.scrView.frame;
aFrame.size.height  = 0;
[self.scrView setFrame:aFrame];

或:

[self.scrView setFrame:CGRectZero];
[self.scrView setContentSize:CGSizeZero];

甚至建议:

[self.scrView removeFromSuperview];

有什么办法可以让那东西消失……包括它曾经所在的区域?

【问题讨论】:

【参考方案1】:

你可以像这样从它的父视图中移除它:

[self.scrView removeFromSuperView];

【讨论】:

许多尝试(包括那一次)似乎使“对象”消失了......但巨大的空白区域仍然存在。那是什么……我该如何让它消失? 滚动视图和表格视图在同一个超级视图中吗?或者它有自己的视图控制器。大的空白听起来像是有一个视图或视图控制器,里面什么都没有。 我得看看代码……但我认为布局是:一个包含一些图像的滚动视图。滚动视图位于 tableView 的顶部......并且位于 mainView 内部。我需要使滚动视图(及其包含的图像)消失。并且不会离开以前的区域。

以上是关于UITableView 内的 UIScrollView 无法正确显示/隐藏(Xcode iPhone)的主要内容,如果未能解决你的问题,请参考以下文章

如何使表格滚动工作:UIControl 内的 UITableView 内的 UIControl

UIViewController 内的 UITableView? [关闭]

如何从应用程序委托访问 uitabbarcontroller 内的 uinavigationcontroller 内的 uitableview?

UIScrollView 内的 UITableView

更新 UITableView 内的 UIView 帧大小 - swift

带有日期的 UIScrollView 内的 UITableView