以下代码淡出当前图像,但由于某些奇怪的原因导致所有按钮消失。
self.imageThree = [UIImage imageNamed:@"newscreensh.png"];
self.imageTwo = [UIImage imageNamed:@""];
UIImage * toImage = ([self.imageView.image isEqual:self.imageThree]) ? self.imageTwo : self.imageThree;
[UIView transitionWithView:self.imageView
duration:0.8f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
self.imageView.image = toImage;
}completion:NULL];
当我在下面使用此代码时,所有按钮都不会消失。
loader.image = [UIImage imageNamed:@""];
然而,我需要一个淡化效果来平滑事物。我的故事板按钮可能会发生什么?
答案 0 :(得分:2)
self.imageThree = [UIImage imageNamed:@"newscreensh.png"];
//self.imageTwo = [UIImage imageNamed:@""];
UIImage *toImage = self.imageView.image != nil?nil:self.imageThree;
因为isEqual将比较两个图像的数据是否具有相同的字节数,[UIImage imageNamed:@""]
返回nil值,所以你只需要比较图像的图像是nil.return nil
还是{{1实现淡出动画。
imageThree
答案 1 :(得分:0)
要淡化图像,您可以像这样更改其Alpha值:
[self.imageTwo setAlpha:0.5];
如果alphaValue为0,则图像将完全透明。 Alpha值介于0和0之间。如果这不是你需要的,请告诉我。