iphone - 替换为 view2 后删除 View 1

标签 iphone ios selector

我有一个小代码来显示图像 1 并在 2 秒后将 image1 替换为 image2 并带有下面的动画

UIImageView *view1 = [[UIImageView alloc] initWithFrame:CGRectMake(0, 410, 1020, 400)];
UIImage *image = [UIImage imageNamed:@"img.jpeg"];
view1.image = image;
[self.view addSubview:view1];
UIImageView *view2 = [[UIImageView alloc] init ];
view2.frame = CGRectMake(0, 410, 0, 400);
view2.image = [UIImage imageNamed:@"bien.jpeg"];
[self.view addSubview:view2];
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.8];
[UIView setAnimationDelay:2];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(removeView: view1:)];
view2.frame =  CGRectMake(0, 410, 800, 400);
[UIView commitAnimations];

和函数 removeView 从下面的 super View 中删除 view1:
-(void)removeView: (UIImageView *)view1{
[view1 removeFromSuperview];
 }

所以我不知道为什么我从superview中删除view1的功能不起作用,请帮助我!非常感谢...

最佳答案

选择器不能传递参数。将您的方法修改为

-(void)removeView{
   [view1 removeFromSuperview];
 }

其中“view1”是您的 View 的一个实例。

和您的选择器:
[UIView setAnimationDidStopSelector:@selector(removeView)];

关于iphone - 替换为 view2 后删除 View 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11539322/

相关文章:

iphone - 播放声音时的内存管理帮助-iPhone编程v

iOS 应用程序在 Apple 批准过程中崩溃但对我来说不是

swift : Extra Argument in call with scheduledTimerWithTimeInterval

ios - UIButton Action 目标方法之间的区别

twitter-bootstrap - 带有选择器和 data-* 属性的 Twitter 的 Bootstrap 弹出框

ios - iPhone 和 iPad 的应用程序名称相同,但发布日期不同

带有状态栏和导航栏的 iPhone 屏幕尺寸?

ios - 使用 Swift 在 UIWebView 中旋转 PDF

ios - 我无法根据与谓词的关系从核心数据中获取实体

ios - 具有渐变背景的 Xamarin iOS LaunchScreen