iOS为什么我的UIImageView在集合视图单元格中没有正确响应缩放转换?

时间:2014-01-02 23:37:20

标签: objective-c ios6 uiimageview uicollectionviewcell cgaffinetransformscale

我有一个带有图标的UICollectionViewCell。我希望单元格可视地指示用户已轻敲它。

我正在尝试UIView's animateWithDuration:并尝试将图标的变换缩放1.2以使其变大,然后将其设置为标识以使其成为原始大小。我之前使用过这些代码和常规图像,它似乎有效。

我在单元格中的图像向上扩展时会出现奇怪的行为,就好像它是固定在左上角一样。但是,当它缩小到标识时,它会像从中心缩放(正如您所期望的那样)。结果是,在两个动画之间,图像中心从一个位置移动到下一个位置时出现了令人不快的

如何在UICollectionViewCells中正确缩放图像?

-(void)setSelected:(BOOL)selected
{

    [super setSelected:selected];
    if(selected)
    {
        //I tried this, does not seem to do anything
        self.icon.layer.anchorPoint = CGPointMake(0.5, 0.5);

        [UIView animateWithDuration:0.3 animations:^{
            self.icon.transform = CGAffineTransformMakeScale(1.2, 1.2);

        } completion:^(BOOL finished) {

            [UIView animateWithDuration:0.4 animations:^{
                self.icon.transform = CGAffineTransformIdentity;
            }];
        }];

       DLog(@"selected");
    }else
    {
        DLog(@"unselected");
    }

}

0 个答案:

没有答案