3

我在界面生成器中创建了一个分段控件。

在我的 ViewController.h 中:

@interface ViewController : UIViewController <MKMapViewDelegate>
@property IBOutlet UISegmentedControl *Segment;
- (IBAction)switchMode:(id)sender;
@end

我能做的是将分段控件与 IBAction 连接,但我无法将它与 IBOutlet 连接!

4

3 回答 3

6
  • 将分段控件添加到 nib/Storyboard
  • 将以下代码添加到 .h

@property(nonatomic,retain) IBOutlet UISegmentedControl *Segment;

  • 在您的故事板或 xib 中,确保文件所有者的类名与您编写插座的类的类名相同
  • 右键单击 segmantControl 并出现一个带有出口和操作的窗口
  • 单击并拖动引用插座 并将其拖放到文件所有者上会出现一个新的弹出窗口,其中包括您用代码编写的插座选择它。

连接已建立

于 2013-02-11T21:43:48.217 回答
0

你忘了写属性的参数,像下面的代码一样更正它

@property(nonatomic,retain) IBOutlet UISegmentedControl *Segment;

在此之后在 .m 文件中合成此属性,如下所示

@Synthesize Segment;
于 2013-02-11T18:42:11.883 回答
0

似乎通过一些 xCode 更新,您无法再将某些插座连接到您的 .h。不过,您应该可以在 .m 中连接它:

@interface ViewController ()
@property (weak, nonatomic) IBOutlet UISegmentedControl *mySegmentedController;
@end

我会阅读一些文档,看看它什么时候改变了。此外,确实没有理由将此属性连接到您的公共接口(因此不再允许它)。只有该类的 View Controller 才能控制它。

于 2013-02-11T19:18:38.443 回答