title: Cast object ( UIViewController ) to their unknown subclass
body: <p>I have developed a generic controller for sliding UIView and I manage UIViewController (and obviously subclass ) and must call a specific method (freeze) only if a subclass of UIViewController respond to this method:</p>
  
  <pre><code>-(void)freezeRootViewController
  {
      if([_rootViewController respondsToSelector:@selector(freeze)])
          [ ((id) _rootViewController) freeze];
  }
  </code></pre>
  
  <p>I don't know the class of _rootViewController but I know it is a subclass of UIViewController, for this reason I have tried to cast my _rootViewController to ID, but I can't compile:</p>
  
  <p>Environment: XCode 4.5.1, iOs 4.3+ with ARC</p>
  
  <p>Error: "No know instance method for selector 'freeze'"</p>
  
  <p>Note: I CAN'T force the developer to use a specific UIViewController subclass for the _rootViewController.</p>