[UPDATE]
Finally, I probably found a solution that matches this problem: It's quick and dirty, just to suppress the warning, try wrapping your code between these lines
#pragma clang diagnostic push #pragma clang diagnostic ignored "-Wgnu"
or -Wall more about suppressing compiler warnings Clang Guide
[OLD ANSWER]
I would like to give 2 cents. If I understand well, you are trying to create a kind of abstract factory that gives you a specialized version of the view based on the functionality of the view manager. In my opinion, storyboards do not work very well in this design, but I would like to tell you about it.
First, I will create an abstract class for your view controller, where in the interface you declare all the property that you need in all your VC subcategories, for example:
- OSClient
- AbstractStageLayoutView
- Playbackview as weak
- playbackProperty
The PlaybackView class is a cluster of classes, such as NSNumber, you call the factory method on it, which returns an object that may differ from case to case. If you check NSnumber, it returns another object if you create a float or integer, but all of them are subclasses of NSNumber, and NSNumber declares all the properties of its subclasses, but does not implement them.
Now, what can you do in the -viewDidLoad method of an abstract class, a method like this is called
PlaybackView *plbackView = [PlaybackView playbackViewFroProperty:self.playbackProperty]; [self.view addSubview:playbackView]; self.playbackView = plbackView;
User defined runtime attibute can be evaluated inside the User defined runtime attibute in the viewcontroller storyboard editor.
source share