title: Get the current first responder without using a private API
body: <p>I submitted my app a little over a week ago and got the dreaded rejection email today. It tells me that my app cannot be accepted because I'm using a non-public API; specifically, it says,</p>
  
  <blockquote>
    <p>The non-public API that is included in your application is firstResponder.</p>
  </blockquote>
  
  <p>Now, the offending API call is actually a solution I found here on SO:</p>
  
  <pre><code>UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow];
  UIView   *firstResponder = [keyWindow performSelector:@selector(firstResponder)];
  </code></pre>
  
  <p>How do I get the current first responder on the screen? I'm looking for a way that won't get my app rejected.</p>