【问题标题】:Is there a way to set a UITableView's contentInset through Storyboard?有没有办法通过 Storyboard 设置 UITableView 的 contentInset?
【发布时间】:2014-10-01 10:30:18
【问题描述】:
self.tableView.contentInset = UIEdgeInsetsMake(232, 0, 232, 0)

有没有办法在 Storyboard 中进行设置?

【问题讨论】:

    标签: ios uitableview uistoryboard


    【解决方案1】:

    自 Xcode 6 以来,属性检查器似乎不再提供内容插入选项。但如果您不想在代码中定义 contentInset,因为它与用户界面相关,那么还有一个选项:

    选择您的UITableView 并打开Identity Inspector (Alt+Cmd+3) 并点击用于添加用户定义的运行时属性的加号按钮。选择Rect 作为其类型,选择contentInset 作为其关键路径。

    请参见此处更改顶部插图的示例。 50 似乎存储为 x 值,但奇怪的是它改变了顶部插图。

    参考:{{top, left}, {bottom, right}}

    【讨论】:

    • 干得好!但请注意UIViewControllerautomaticallyAdjustsScrollViewInsets 属性。
    • @ZhouHao 这个问题是关于UITableView的。 UILabel 本身不支持内容插入。请参阅此处获取解决方案:stackoverflow.com/questions/19437579/…
    • 震撼内容。
    • 有谁知道为什么 Apple 如此热衷于从他们的产品中删除功能?顺便说一句,正确答案。
    【解决方案2】:

    是的,UITableView 是 UIScrollView 的子类,它的 contentInset 属性是 UIScrollView 的属性,所以在 UIScrollView 的部分找到它。

    对于 Xcode 6 更新:

    我认为我可以在Xcode 6中设置contentInset的原因是因为该项目是在Xcode 6之前创建的。所以如果在Xcode 6及更高版本中创建项目,则不能设置contentInset。我认为这是因为在 iOS 7 中 UIViewController 会相应地调整此属性。看看automaticallyAdjustsScrollViewInsetsUIViewController

    【讨论】:

    • @kudosCC - Xcode 5 (beta 6) 上没有出现 Content Insets 参数...你知道为什么吗?
    • @christopher.ryan.cruz 我的 Xcode 版本是 5.1.1,确保选择 UITableView。
    • @KudoCC 我坚持不是。 UITableView 那里只有“指标插图”。 XCode 6.0.1
    • @KudoCC - 不确定发生了什么,但我会支持 Jonas 所说的 - 它不存在!滚动视图部分有指示插入,但没有内容插入(xcode 6.0.1)请参阅stackoverflow.com/q/25207927/558575 的图片以获取证实。
    • @KudoCC 我添加了一个答案,建议在 Xcode 6+ 的情节提要中设置内容插图的解决方案。
    【解决方案3】:

    在 XIB 中,UIScrollView 的 contentInset 键路径,值的组织顺序与 UIEdgeInsets 构造函数相同:

    {{top, left}, {bottom, right}}

    UIEdgeInsets(top: 100, left: 0, bottom: 100, right: 0)

    【讨论】:

      猜你喜欢
      • 2014-10-02
      • 1970-01-01
      • 2023-04-10
      • 2021-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 2016-04-09
      相关资源
      最近更新 更多