gpt4 book ai didi

objective-c - 当为同一事件提供多个 IBAction 时,IBAction 会触发什么命令

转载 作者:行者123 更新时间:2023-12-01 18:31:47 26 4
gpt4 key购买 nike

根据我的标题,我正在构建一个包含一些 UIButtons 的 View 。
我正在考虑将 2 个 Action 连接到一个 UIButton 事件,因为该按钮需要做两件事,但我需要按特定顺序执行它们。

无论我如何尝试,我似乎都无法更改 Action 触发的顺序。有没有办法让我决定这个,还是随机的?

当我在 Interface Builder 中右键单击 UIButton 时,我看到两个 Action 都添加到了同一个事件中,但无论它们以何种顺序出现,触发顺序都会发生变化。

希望你们中的一些人可以帮助我。

最佳答案

UIButton 是 UIControl 的子类,它使用目标 Action 模式来传达事件。添加目标的编程接口(interface)通过 addTarget:action:forControlEvents: 公开。方法。在界面生成器中连接 IBActions 只是使用同一界面的一种可视化方式;加载包含它的 .xib 文件时,捆绑加载器将在未归档按钮上调用该方法。

关键是 target该方法中的参数由 UIControl 在内部添加到 NSSet(或可变子类)。根据定义,NSSet 是无序的。这意味着当按钮需要枚举它的一组目标来调度事件时,枚举的顺序没有很好的定义。

关于objective-c - 当为同一事件提供多个 IBAction 时,IBAction 会触发什么命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8186059/

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