14

I think this image explains it all. I have a subclass of UIView that I've entered into the class field. I'm trying to connect ibOutlets between the storyboard and class implementation. It's not giving me an error, but it's not working either. Is this another xcode bug, or am I expecting this to work in a way that it won't?

enter image description here

nwales
  • 3,521
  • 2
  • 25
  • 47

4 Answers4

14

Here is a solution:

1) Type an IBOutlet by hands in your header file, example:

@property (strong, nonatomic) IBOutlet ProgressBarElementView *targetProgressElement;

2) Drag the pin from the code to the element in document outline zone

enter image description here

Sergio
  • 385
  • 4
  • 11
0

I have the same problem.. I saw that if you add the custom class to the root view in the view controller, it will work.. In your case this is the initial View, listed under Bottom Layout Guide

But there must be a better way

Ciprian
  • 1,125
  • 1
  • 9
  • 14
0

To overcome XCode stubborness, especially when you need to hook up different enums from UIControlEvent than UIControlEventTouchUpInside, I'd rather use code directly from within the custom view class:

SWIFT

button.addTarget(self, action:#selector(ClassName.handleRegister(sender:)),
                          for: .touchDragExit)

OBJECTIVE-C

[self.button addTarget:self
                action: @selector(buttonTouchDragExitAction:)
      forControlEvents:UIControlEventTouchDragExit];

One might include such code in awakeFromNib or viewDidLoad or where it best suits.

Lookaji
  • 1,023
  • 10
  • 21
0

write the outlet inside your custom UIView

    @IBOutlet weak var imageView: UIImageView! 

then drag it into the storyboard on the view

Dan Alboteanu
  • 9,404
  • 1
  • 52
  • 40