title: Using CATransformLayer warning: changing property opaque in transform-only layer, will have no effect
body: <p>I created a "<code>TransformView</code>" subclassing <code>UIView</code> in order to support a double-sided view which I am using in a flip animation. This has been suggested in other posts, eg:</p>
  
  <p><a href="https://stackoverflow.com/questions/9423892/how-to-rotate-a-flat-object-around-its-center-in-perspective-view/9425938#9425938">How to rotate a flat object around its center in perspective view?</a></p>
  
  <pre><code>@interface TransformView : UIView
  @end
  
  @implementation TransformView
  + (Class)layerClass {
    return [CATransformLayer class];
  }
  @end
  </code></pre>
  
  <p>It all works fine, but I get a warning every time I create a TransformView object using:</p>
  
  <pre><code>TransformView *newTransformView=[[TransformView alloc] initWithFrame:frame];
  </code></pre>
  
  <p>The warning says:</p>
  
  <blockquote>
    <p> - changing property opaque in
    transform-only layer, will have no effect</p>
  </blockquote>
  
  <p>I guess the <code>UIView</code> class is initialising the opaque property which is usually fine for a <code>CALayer</code> but not a <code>CATransformLayer</code>.</p>
  
  <p>Is the subclassing code quite dodgy? If so, how else can you create a 2-sided view for flip animations?</p>
  
  <p>Any ideas for how to stop the warning?</p>
  
  <p>I have a suspicion that creating a <code>TransformView</code> from a nib file rather than <code>initWithFrame</code> avoids the warning, but is seem cludgy to have to do this just to avoid the warning.</p>