当有 2 个选项卡并排共享同一个 tableView 时,UITableView 额外空间

Posted

技术标签:

【中文标题】当有 2 个选项卡并排共享同一个 tableView 时,UITableView 额外空间【英文标题】:UITableView extra space when having 2 tabs side by side sharing the same tableView 【发布时间】:2017-11-08 09:09:22 【问题描述】:

我对这个问题有同样的问题: Why is there extra padding at the top of my UITableView with style UITableViewStyleGrouped in ios7

我在这篇文章中尝试了很多解决方案,但没有一个适合我。所以我想在这里发布我的项目,以便每个人都可以看看并帮助我找到解决方案。

https://github.com/happysmile09/TableViewIssue

说明:在选项卡 2 中,我将表格视图滚动到底部,然后移动到选项卡 1,额外的顶部空间显示出来。

【问题讨论】:

【参考方案1】:

如果您不需要标题高度,您可以使用以下函数将高度设为 0 并最小化间隙

func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat 
    return 0.0;

【讨论】:

不,这没有帮助!请帮忙检查一遍【参考方案2】:

希望能帮到你……

添加 2 行

让 indexPath = IndexPath(row: 0, section: 0)

self.tableView.scrollToRow(at: indexPath, at: .top, animated: false)

到 2 个函数 didTapTab1didTapTab2

【讨论】:

【参考方案3】:

希望这会有所帮助..取消选中调整自动滚动视图插图..

【讨论】:

【参考方案4】:

你可以试试下面的

首先在你的 viewDidLoad() 方法中添加 self.automaticallyAdjustsScrollViewInsets = NO

然后 选择 TableView > Open Size Inspector > Set SectionHeight of Header 为 1

或者你也可以使用方法

func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat 
            return 1.0; 
 

【讨论】:

以上是关于当有 2 个选项卡并排共享同一个 tableView 时,UITableView 额外空间的主要内容,如果未能解决你的问题,请参考以下文章

基于最大内容并排的相同宽度选项卡

带有并排选项卡的 Unity 自定义窗口

SQL Server Management Studio中的垂直选项卡 - 并排查询和结果?

两个浏览器选项卡之间的共享变量范围? [复制]

iOS Swift ScrollView、UITableView、滚动区域

会话在选项卡之间共享