swift - 调整 UITableView 的大小

标签 swift uitableview resize frame

我有一个 Tableview,上面有一个 Segmented Controller。根据先前的用户操作,此分段 Controller 会隐藏或显示。

如果它是隐藏的,我想调整我的 tableview 的大小,以便它看起来不错(否则我在屏幕上有一个空隙)。

enter image description here

我尝试了以下代码(放置在 ViewDidLoad 中)但没有成功。当放置在 ViewDidAppear 或其他函数中时,它也不起作用。 Tableview 是从 Storyboard 中引用的,它不是以编程方式创建的。

    if selectedGroup == 1
    {
        self.tableView.frame = CGRectMake(0, 152, 320, 367)
        segControl.hidden = false
    }
    else if selectedGroup == 2
    {
        self.tableView.frame = CGRectMake(0, 116, 320, 403)
        segControl.hidden = true
    }

我尝试了一些其他的东西,比如偏移框架然后调整高度,但这也没有用......

最佳答案

使用自动布局

如果您正在使用自动布局并且想要更改框架,请尝试使用约束(NSLayoutConstraintIBOutlet)。

enter image description here

设置约束导出并更改 constant 值:

self.sampleConstraint.constant = 20
self.view.layoutIfNeeded()

没有自动布局

使用自动调整表单工具

enter image description here

你也可以通过代码(obj-c)来完成:

view.autoresizingMask = (UIViewAutoresizingFlexibleWidth |    
                              UIViewAutoresizingFlexibleLeftMargin);

关于swift - 调整 UITableView 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30843220/

相关文章:

swift - 仅在我的结构中扩展 Double

ios - swift MapKit : Calculate ETA for a specific Route and not for directions?

ios - 如何在 secondVC 中发生更改时自动实时更新 firstVC 中的 UITableViewCell

Swift COW 线程安全

swift - 这段遗留 Swift 代码中 "SubSlice"的新等价物是什么?

swift - 使用 Firebase Firestore 更新 TableViewCell 中的按钮 UI

swift - 如何使单元格及其元素显示为灰色?

java - Android:为每个设备自动调整大小

firefox - 在 Firefox 中禁用框架调整大小

c# - 在 C# 中调整图像大小