【问题标题】:How to trigger UIButton action programmatically如何以编程方式触发 UIButton 操作
【发布时间】:2014-11-12 11:00:09
【问题描述】:

我在一个类中有几个按钮,它们的动作是分开的。 我在另一个类中创建了该类的实例,并且在第二类中有 UIButton 数组。我想以编程方式调用每个按钮的操作。在 iOS 中有没有办法做到这一点?

【问题讨论】:

    标签: ios objective-c swift uibutton


    【解决方案1】:

    UIButton 有一个方法来调用链接到某个控制事件的目标/选择器:

    [button sendActionsForControlEvents:UIControlEventTouchUpInside];

    【讨论】:

      【解决方案2】:

      斯威夫特 3.0/4.0/5.0

      button.sendActions(for: .touchUpInside)
      

      【讨论】:

      • 确保您将其添加到按钮的 IBOutlet,而不是 IBAction - .sendAction(for: .touchUpInside) 部分可能会让您失望。
      【解决方案3】:

      您可以通过传递 UIbutton id 来简单地从其他类调用第一个类的操作方法作为实例方法

      例如: 在头等舱“ClassA”

      - (IBAction)classAbuttonAction1:(id)sender;
      - (IBAction)classAbuttonAction2:(id)sender;
      

      来自另一个班级

      UIButton *bClassButton = [[UIButton alloc]init];    
      ClassA *instance = [[ClassA alloc]init];
      
      [instance classAbuttonAction1:bClassButton];
      [instance classAbuttonAction2:bClassButton];
      

      【讨论】:

        猜你喜欢
        • 2013-02-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多