【问题标题】:should I don't use addTarget of UIButton in viewDidLoad我应该不在 viewDidLoad 中使用 UIButton 的 addTarget
【发布时间】:2020-09-02 23:20:15
【问题描述】:

我的前辈正在审查我的代码,他发现我使用了这样的 UIButton addTarget 方法

override func viewDidLoad() {
    super.viewDidLoad()
    self.btnAccount.addTarget(self, action: #selector(Accounts(_:)), for: .touchUpInside) 
  }

现在他说你不应该在 viewDidLoad 中使用 addTarget 加载视图控制器需要时间(我不明白的那种内存管理),但我没有发现它相关 这就是我问这个问题的原因,我这样做是否犯了一些错误,我应该总是采取行动吗

【问题讨论】:

  • 那他建议你怎么做?

标签: ios swift uibutton addtarget


【解决方案1】:

我没听说过,即使是真的,你也不应该尝试在你的应用上使用 premature optimizationUIButton 是一个 UIControl 对象,它遵循事件侦听器模式,通常使用目标('aka' 侦听器或观察器)的哈希图(Objective-C 中的NSDictionary)实现,现在还不是时候- 消耗性操作。


个人更喜欢一开始就设置所有 UI 组件:

lazy var btnAccount: UIButton = {
    let btn = UIButton

    // setup button's appearance

    btn.addTarget(self, action: #selector(Accounts(_:)), for: .touchUpInside)
    return btn
}()

附:请向他询问事实的来源并告诉我。

【讨论】:

  • 我也问了他具体的原因,但我不明白,这就是为什么我必须发布问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-28
相关资源
最近更新 更多