【发布时间】:2011-09-20 16:58:12
【问题描述】:
我有一个 UIImage,我想在 3 秒后将其 alpha 设置为 0.00...在我的 UIImage 中有一张我想在进入视图时立即看到的图片,但 3 秒后它必须消失。
【问题讨论】:
我有一个 UIImage,我想在 3 秒后将其 alpha 设置为 0.00...在我的 UIImage 中有一张我想在进入视图时立即看到的图片,但 3 秒后它必须消失。
【问题讨论】:
像使用核心动画一样简单
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:3.0f];
imageView.alpha = 0.0f;
[UIView commitAnimations];
如果不想在3秒内慢慢淡出,可以使用
[UIView setAnimationDelay:3];
并将动画持续时间减少到 0.5f 或其他东西。 我认为使用较短的淡出时间感觉比简单地将隐藏设置为 YES 更好
【讨论】:
这将使它在三秒内淡出。从 viewDidLoad 调用:
[UIView animateWithDuration:3.0 animations:^{myImage.alpha = 0; }];
或者如果您希望动画从 2.5 秒开始并持续半秒,您可以将其放入一个方法(将 3.0 更改为 0.5)然后调用:
[NSTimer scheduledTimerWithTimeInterval:2.5 target:self selector:@selector(hideMyImage) userInfo:nil repeats:no];
【讨论】:
您是否在UIImageView 中显示您的UIImage?
如果是这样,只需将该图像视图上的 hidden 属性设置为 YES,图像视图(及其图像)就会消失。
【讨论】:
您始终可以从父视图中删除子视图。
[imageView removeFromSuperview];
您以后可以随时添加它
[self.view addSubview:imageView];
【讨论】: