注意:我仅在模拟器上对此进行了测试。

我想在代码中添加目标动作,而不是在Interface Builder中将其作为IBAction连接。
theButton在IB中创建的左上方导航栏上。

脚步:

  • 宣布theButton为IBOutlet,并将其连接到IB。
  • viewDidLoad中添加了此功能:
    self.theButton.target = self;
    self.theButton.action = @selector(theAction);
    
  • 我正在通过以下方式测试theAction:
    - (void)theAction {
    NSLog(@"theAction called");
    //do some other stuff
    }
    

  • 当我在模拟器中单击theButton时,没有任何反应。我根本看不到NSLog语句。

    我想念什么?

    最佳答案

    您是否已将动作连接到interface-builder中的按钮?

    如果不是,则应在.h文件中声明操作

    -(IBAction)theAction;
    

    更改.m文件中操作的名称
    -(IBAction)theAction{
    
    }
    

    并将动作精确地连接到interface-builder中的按钮。

    关于iphone - 点击UIBarButtonItem时未调用操作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6407242/

    10-08 21:25