除垂直方向外,UITableView contentInset使表格视图水平滚动

Geo*_*ell 12 iphone uitableview uiscrollview ios

我正在代码中创建一个UITableViewController并将其推送到导航堆栈的顶部.它的表视图只是为了显示一个简单的文本项列表.

我需要在我的表视图中添加一些contentInset,我在UITableViewController的init方法中添加了该视图

self.tableView.contentInset = UIEdgeInsetsMake(7.0f, 5.0f, 7.0f, 5.0f);
Run Code Online (Sandbox Code Playgroud)

但是,当我加载表视图时,似乎左右的contentInset实际上已经将表视图的宽度拉伸了10.我现在看到一个小的水平可滚动区域.我不希望在我的表视图上进行任何类型的水平滚动.如果我删除contentInset代码,我的表视图表现得很明显,即只提供垂直滚动.我怎么能保持这样,但我的contentInset到位了?我尝试在viewWillAppear中将contentSize.width减少10,它没有任何效果.

这似乎是重复但没有可接受的答案:UITableView ContentInsets水平滚动内容

在模拟中我用虚线标记了所需的contentInset ---

在此输入图像描述

谢谢.

Geo*_*ell 4

我最终只设置了顶部和底部插图。为了实现左右插图的外观和感觉,我创建了与屏幕一样宽的自定义单元格。但实际的单元格内容仅限于自定义单元格内稍窄的子视图。因此,子视图的左侧和右侧都有剩余空间。