gpt4 book ai didi

iOS - 屏幕顶部的可隐藏 UIView

转载 作者:行者123 更新时间:2023-11-28 06:10:10 27 4
gpt4 key购买 nike

我想创建一个信息 View ,它将显示在屏幕顶部并在一段时间后消失,稍后它可以再次显示等等。

我已经创建了 UIView 并设置了约束:

topInfoView.leadingAnchor.constraint(equalTo: mainView.leadingAnchor)
topInfoView.trailingAnchor.constraint(equalTo: smainView.trailingAnchor)
topInfoView.heightAnchor.constraint(equalToConstant: HEIGHT)

关闭状态: topInfoView.topAnchor.constraint(equalTo: mainView.topAnchor, constant: -HEIGHT)

打开状态: topInfoView.topAnchor.constraint(equalTo: mainView.topAnchor, constant: 0)

其中 mainView 是主 UIViewCcontroller View 。

我将 HEIGHT 设置为我的用户高度 + “状态栏高度”(带电池、Wifi 等的栏)。问题是,有时状态栏高度为 0 而我的 topInfoView 放置不正确。我通过这个获得“状态栏高度”:

func statusBarHeight() -> CGFloat {
let statusBarSize = UIApplication.shared.statusBarFrame.size
return Swift.min(statusBarSize.width, statusBarSize.height)
}

但它有时不起作用( View 未初始化?)而且我也不确定新的 iPhone X,其中状态栏的解决方式不同。有没有别的办法,不用计算高度?

最佳答案

使用垂直堆栈 View 。一个接一个垂直放置 tableView,然后垂直放置您的 View 。设置表格 View 的高度。保持堆栈 View 的分布属性为填充。创建 TableView 的导出。通过这种安排,当您隐藏表格 View 时,您的 View 将填满整个区域。当您再次将 TableView 的 isHidden 属性设置为 false 时,您的 TableView 和 View 将显示为原始排列。您可以在隐藏和显示表格 View 时进行动画处理,以提供良好的用户体验。

关于iOS - 屏幕顶部的可隐藏 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46971201/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com