UIView 转换仅在 UIView 是通过 Interface Builder 创建时才有效
Posted
技术标签:
【中文标题】UIView 转换仅在 UIView 是通过 Interface Builder 创建时才有效【英文标题】:UIView transition works only if the UIView is created through Interface Builder 【发布时间】:2011-11-14 19:32:07 【问题描述】:我将下面的代码连接到 UIButton 操作...如果我像下面这样以编程方式创建图像视图... myImageView 不会在屏幕上显示动画(它会立即出现)
UIIImageView *myImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"btn_image.png"]];
[self.view addSubview:myImageView];
[myImageView setHidden:YES];
[UIView transitionWithView:myImageView duration:2 options: UIViewAnimationOptionTransitionFlipFromLeft animations:^
[myImageView setHidden:NO];
completion:nil];
但是,如果我首先在 Interface Builder 中创建“myImageView”并将其隐藏属性设置为 true,然后将其与插座连接起来,则相同的代码可以正常工作
[UIView transitionWithView:myImageView duration:2 options: UIViewAnimationOptionTransitionFlipFromLeft animations:^
[myImageView setHidden:NO];
completion:nil];
那么...在以编程方式创建以使其正常工作时,我还需要做些什么吗?谢谢!
【问题讨论】:
【参考方案1】:这是一个教程链接,我可以用它来让它工作......
http://www.dizzey.com/development/ios/simple-uiview-transitions-animation-using-blocks-in-ios-4/
您需要有一个 containerView,并且需要在 viewdidload 期间将其添加到您的主视图中(而不是在您希望进行转换的操作期间)
这适用于“addSubView”或“setHidden:NO”
【讨论】:
以上是关于UIView 转换仅在 UIView 是通过 Interface Builder 创建时才有效的主要内容,如果未能解决你的问题,请参考以下文章