2

在 iOS 上,如果我们使用 Interface Builder,我们可以轻松地创建 Outlet 和 Action。

如果我们使用 Objective-C 代码而不是 Interface Builder,我们也可以很容易地创建出口,看起来,只需

datePicker = [[UIDatePicker alloc] initWithFrame:CGRectMake(200, 200, 200, 200)];
[self.view addSubview:datePicker];

并且我们在.h文件中定义了一个实例变量。

UIDatePicker *datePicker;

我认为这就像一个奥特莱斯?

对于 Actions 怎么样——我们如何纯粹使用 Objective-C 代码(不使用 Interface Builder)为不同类型的用户交互创建 Actions?

4

2 回答 2

3

像这样:

- (void)someMethod {
  //...
  [button_ addTarget:self
              action:@selector(buttonAction:)
    forControlEvents:UIControlEventTouchUpInside];
  //...
}

//...

// Either |IBAction| or |void| is okay,
//   the former one is just used to be shown in Interface Builder
- (void)buttonAction:(id)sender {
  // your action code here
}

注意:IBOutlet&IBAction仅用于 IB(Interface Builder 的缩写)。如果您不想使用 Interface Builder 来管理您的视图和操作,您可以忘记它。

于 2012-05-25T03:15:01.967 回答
1

使用IBAction宏:

 // in .h
 -(IBAction) myAction:(id) sender;
于 2012-05-25T02:48:18.493 回答