title: UIButton UIControlEventTouchUpOutside Not Working
body: <p>I have a custom UIButton. To create a custom background color when highlighted I the button (self) as an observer to three events:</p>
  
  <pre><code>[self addTarget:self action:@selector(didTapButtonForHighlight) forControlEvents:UIControlEventTouchDown];
  [self addTarget:self action:@selector(didUnTapButtonForHighlight) forControlEvents:UIControlEventTouchUpInside];
  [self addTarget:self action:@selector(didUnTapButtonForHighlight) forControlEvents:UIControlEventTouchUpOutside];
  </code></pre>
  
  <p>The first two work beautifully, and as long as I touch up inside the button the background gets set back to normal. However if I touch up outside the button the method <code>didUnTapButtonForHighlight</code> never gets called and the background remains the highlighted color. My code is a modified version of the code in Ondrej's answer to <a href="https://stackoverflow.com/questions/4049103/iphone-how-to-set-backgroundcolor-of-uibutton-with-buttontype-uibuttontypecust">this question</a>. Why is it not working? Thanks in advance. </p>