title: Changing label position in UICollectionViewCell
body: <p>We have a <code>UICollectionView</code> which has a prototype cell on the Storyboard. The cell has a <code>UILabel</code> ("<code>label</code>") in it, which is positioned without autolayout.</p>
  
  <p>We set the frame of the label conditionally in the <code>-collectionView:cellForItemAtIndexPath:</code> with setFrame like this:</p>
  
  <pre><code>- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView
                    cellForItemAtIndexPath:(NSIndexPath *)indexPath
  {
      CategoryCell *cell;
      cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"Category" forIndexPath:indexPath];
  
      ...
  
      if (self.isViewTypeList) {            
          [((CategoryCell *)cell).label setFrame:FRAME_RECT];
      }
  
      ...
  
      return cell;
  }
  </code></pre>
  
  <p>We have inspected it, and it seems that first of all it calls the label's <code>-setFrame:</code> with the Storyboard values when it gets to the dequeing, then our code follows, and this sets the new frames correctly. There is no other call other than these, but the label remains at it's original position on the screen.</p>
  
  <p>What's wrong? Why is the new frame not set correctly? Is something other overrdiging it? Do I have to relayout or refresh it somehow?</p>