ios - 全局设置对 UIButton 的引用
问题描述
所以我有一个 UIButton 添加到窗口中,因此它可以在任何呈现的控制器上可见,并且它具有我在其间设置动画的各种状态。
let window = UIApplication.shared.keyWindow!
window.addSubview(customButton)
这很好用,但是,我想在应用程序中为特定视图显示/隐藏它,我正在努力寻找解决这个问题的最佳方法。将其添加为全球参考会非常不受欢迎吗?
let customButton: CustomButton = CustomButton()
class NavigationClass: UINavigationController {
.....
}
这似乎是最简单的方法,因为我可以从任何班级访问它......
class ControllerClass: UIViewController {
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
customButton.isHidden = true
customButton.resetState()
}
}
有什么理由我不应该这样做,或者有更好的方法来处理它吗?
解决方案
如果您需要并实现所有子控制器的行为,您可以使用静态按钮创建 ParentViewController。
推荐阅读
- ruby - 可以以位置和关键字方式提供的参数?
- javascript - 转换 Node 项目中两个 SQL DB 之间传递的值
- css - 在 Angular 中悬停时旋转 FontAwesome 图标
- html - 从 HTML 转换为字符串 XQuery
- javascript - 为侧边菜单创建外部文件
- azure - 带有 SAS 令牌的 Azure Blob 存储
- python - Request.POST.get 在 django 中对我不起作用,返回默认值
- reactjs - React 中的 Openlayers 弹出窗口不遵循地图缩放
- javascript - 数据属性无法从 foreach 中获取动态 ID
- business-objects - 计算数据子集中的单个实例