title: Remove subviews with tags safely
body: <p>This is not a real problem, i want just a clarification.
  I'm adding some subviews on a UIButton(each button has a tag), i know that there may be either 4 or 5 subviews.
  So, when i want to remove some subviews(specifically the 4th and 5th in this case):</p>
  
  <pre><code>int cnt=[[(UIView *)[self.scrollView viewWithTag:index] subviews] count];
    if (cnt==4) {
        [[[(UIView *)[self.scrollView viewWithTag:index] subviews] objectAtIndex:3] removeFromSuperview];
    }
    if (cnt==5) {
        [[[(UIView *)[self.scrollView viewWithTag:index] subviews] objectAtIndex:3] removeFromSuperview];
      //[[[(UIView *)[self.scrollView viewWithTag:index] subviews] objectAtIndex:4] removeFromSuperview]; &lt;-- this crash
        [[[(UIView *)[self.scrollView viewWithTag:index] subviews] objectAtIndex:3] removeFromSuperview];
  
      }
  </code></pre>
  
  <p>The commented line can not be executed, of course, because there aren't more 5, but 4 subviews.
  So I have to remove the view pointing twice on the same index.
  I would like to know if it's a safe way to remove them, and i want to be sure that the last view is moved one position lower in the array <code>[[self.scrollView viewWithTag:index] subviews]</code>.</p>
  
  <p>Hope it is clear.
  Thanks</p>