UIImage翻转和镜像

时间:2012-03-11 15:43:59

标签: iphone ios image sdk flip

我有一个需要翻转和镜像的UIImage。我通过使用UIImageView完成了这个。我有两个问题。

  1. 这不会仅改变图像的视图。因此,当我使用图像时,它没有翻转或我得到一个错误。

  2. 如果我使用相同的变换两次,它第二次什么都不做。

  3. 代码示例:(我是IOS编程的新手,很抱歉任何错误的代码。)

    调用翻转:

    // ImageHolder is a UIImageView
    ImageHolder = [self flip:ImageHolder FlipType:@"V"];
    

    它叫什么:

    - (UIImageView *)flip:(UIImageView *) fvImageView FlipType:(NSString *)FlipType { 
    
        UIImageView *newView =  [[UIImageView alloc] init];
        newView = fvImageView;
        if ( FlipType == @"V"){
            newView.transform = CGAffineTransformMakeScale(-1, 1);
        } else if ( FlipType == @"H"){
            newView.transform = CGAffineTransformMakeScale(1, -1);
        }else if ( FlipType == @"VH"){
            newView.transform = CGAffineTransformMakeScale(-1, -1);   
        }else if ( FlipType == @"N"){
            newView.transform = CGAffineTransformMakeScale(1, 1);
        }
        return newView;
        [newView release]; newView= nil;
    }
    

    感谢您提供任何帮助!

1 个答案:

答案 0 :(得分:0)

图像未翻转,因为您释放了图像

[newView release];

然后将其设为零

newView= nil;

然后返回

return newView;

结果是在执行某些操作后返回nil值。我认为对“fvImageView”对象进行更改就足够了,你将它作为函数的参数传递。