我是 iOS 和 Swift 的新手。我目前正在开发一个应用程序,我需要在中心显示一个带有大按钮的标签栏。鉴于时间限制,我所做的是我在窗口中创建了一个按钮,并以编程方式将其放置在选项卡栏的顶部。现在,当我导航到或离开此屏幕时,我分别在 viewDidAppear 和 viewDidDisappear 中添加/删除此按钮。这确保了当标签栏消失时,按钮也不会显示,同样,当标签栏显示时,按钮也会添加到顶部。但是,由于添加和删除发生在 viewDidAppear 和 viewDidDisappear 中,因此在呈现和删除按钮时会有轻微的延迟,因此会看到短暂的 flickr。在 viewWillAppear 和 viewWillDisappear 中做同样的事情根本不起作用。按钮没有 t 显示或隐藏在“意志”方法中。有人可以建议这里可能会出现什么问题吗?提前致谢。我附上了一个屏幕截图,以大致了解它的外观。
问问题
96 次
1 回答
0
添加按钮的正确方法是在 UItabBarController 的视图中添加它,而不是在 UIWindow 中添加
class DashBoardViewController: UITabBarController {
let button:UIButton = {
let view = UIButton(frame: .zero)
view.backgroundColor = .blue
return view
}()
override func viewDidLoad() {
super.viewDidLoad()
initView()
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
button.center = tabBar.center
}
private func initView() {
button.center = tabBar.center
view.addSubview(button)
}
}
于 2018-06-22T04:26:47.730 回答