Swift - 如何让分段控制锁定在屏幕顶部

Posted

技术标签:

【中文标题】Swift - 如何让分段控制锁定在屏幕顶部【英文标题】:Swift - How to get Segmented control to lock at top of screen 【发布时间】:2018-01-24 06:06:00 【问题描述】:

我在屏幕顶部有一个 UI ImageView 和几个标签,然后是一个分段控件,下面是一个 tableView。

如果用户在 tableView 中向下滚动,您将如何将分段控件锁定在屏幕顶部?

是否应该将所有内容都嵌入到滚动视图中,即使 tableView 已经具有滚动功能?

【问题讨论】:

尝试在tableview的header中添加segment control。 你也会把标签和图像视图放在一个单独的单元格中吗? 单独的部分.....标签和图像视图在段控制权的上方..??在这种情况下,将其保留在上面的不同部分中,然后在标签和图像视图下方的单独部分中处理分段控制。 是的,标签和图像视图在分段控件的上方 【参考方案1】:

设置节数:

func numberOfSections(in tableView: UITableView) -> Int 
    return 2

然后在:

func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat 
    switch section 
    case 0:
        return 0
    default:
        return "According to segment conrtrol height"
    

第一节标题高度为0,第二节标题高度根据段控制高度。

然后在中设计段控制的UI:

func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? 
    switch section 
    case 0:
        return nil
    default:
        "Create your UI"

【讨论】:

以上是关于Swift - 如何让分段控制锁定在屏幕顶部的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 的分段控件中调整 textLabel 的大小?

如何在 iOS 上使用 swift 防止我的​​应用程序屏幕锁定

如何在IOS上使用swift防止我的应用程序上的屏幕锁定

在swift3中看到UILocalNotification后如何在我的锁定屏幕上取消或删除?

无论选择哪个选项卡,都显示顶部栏

如何让 iOS 8 小部件出现在锁定屏幕上