【问题标题】:Change the title of one button from another buttons IBAction从另一个按钮 IBAction 更改一个按钮的标题
【发布时间】:2012-02-07 19:53:58
【问题描述】:

以编程方式创建 UIbuttons 时,是否可以从另一个 UIbuttons IBAction 方法访问 UIbutton?我可以通过为每个按钮创建一个 IBOutlet 并以这种方式引用它们来使用界面生成器来做到这一点,但我需要以编程方式创建按钮,似乎无法弄清楚这是否可能?

谢谢!

【问题讨论】:

    标签: ipad ios5 uibutton xcode4.2


    【解决方案1】:

    创建按钮时,将它们分配给控制器中的 ivars。然后,您的 IBAction 方法可以根据需要访问这些 ivars 中的任何一个。

    例如,在您的视图控制器标题中,您可能有:

    @interface MyViewController : UIViewController
    
    @property (nonatomic, retain) UIButton *button1;
    @property (nonatomic, retain) UIButton *button2;
    
    @end
    

    在您的实现中,您将创建类似这样的按钮:

    UIButton *b = [[UIButton alloc] init...];
    ...more setup...
    self.button1 = b;
    [b release];
    
    ...
    

    然后在您的 IBAction 方法中,您可能会执行以下操作:

    -(IBAction)buttonPress:(UIButton *)b
    {
        if (b == self.button1)
            // do something to button2
        else
            // do something to button1
    }
    

    有意义吗? (这都是从内存中编码的,未经测试,fwiw。)

    【讨论】:

      猜你喜欢
      • 2020-11-24
      • 1970-01-01
      • 2015-02-23
      • 2011-12-25
      • 1970-01-01
      • 2020-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多