title: Clarification of components and efficiency of animation method
body: <p>I looked at the Apple documentation for animations, and most of it seems pretty clear. However, I'm going to explain animations to a group of people soon, and there are some components of the animation method that I don't quite understand. Here's the code that I took off of the documentation:</p>
  
  <pre><code>- (IBAction)showHideView:(id)sender
  {
      // Fade out the view right away
      [UIView animateWithDuration:1.0
          delay: 0.0
          options: UIViewAnimationOptionCurveEaseIn
          animations:^{
               thirdView.alpha = 0.0;
          }
          completion:^(BOOL finished){
              // Wait one second and then fade in the view
              [UIView animateWithDuration:1.0
                   delay: 1.0
                   options:UIViewAnimationOptionCurveEaseOut
                   animations:^{
                      thirdView.alpha = 1.0;
                   }
                   completion:nil];
          }];
  }
  </code></pre>
  
  <p>For one, I'm wanting to know if this block-based process is better to use versus the begin/commit process.</p>
  
  <p>My other questions regard the arrow(^) before each method within the block of code and the use of the UIViewAnimationOption. </p>
  
  <p>Why is the arrow needed before each sub-method?</p>
  
  <p>Is a UIViewAnimationOption just a primitive, or is it something that is automatically returning a value?</p>
  
  <p>Any help is appreciated </p>