我正在制作一款名为Rotation的益智游戏。旋转有一个表3x3,其中数字为1-9,用户试图按顺序放置数字,旋转其中的4个(一组)。所以在我的用户界面中,我有9个UIImgaeViews,它们有4个按钮来进行旋转。
在第一组图像中,我有以下代码来完成旋转的动画部分:
-(void)animateNumbers
{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
//[UIView setAnimationDelay:1.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
CGRect pos00Frame = img1.frame;
CGRect pos01Frame = img2.frame;
CGRect pos10Frame = img5.frame;
CGRect pos11Frame = img4.frame;
img1.frame = pos01Frame;
img4.frame = pos00Frame;
img5.frame = pos10Frame;
img2.frame = pos11Frame;
[UIView commitAnimations];
}
我的问题是,当我随机抽取游戏中的所有9个数字时,我无法执行此功能的旋转部分,因为我不知道该集合中的哪个图片。所以我的功能不正常。在某种程度上,我必须知道在哪里和哪些是UI中的数字随时!我试图标记它们但没有进展。有什么想法吗?
答案 0 :(得分:0)
我真的不明白你的意思,但你可以标记图像,然后再使用:
再次获取它们UIImageView * currentImage = (UIImageView *)[self.view viewWithTag:1];
如果使用2个变量来访问一个图像视图,则无关紧要。
例如:
- (void)viewDidLoad {
imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"myImage"]];
imageView.tag = 1;
}
//then in your other action:
-(void)animateNumbers {
//or whatever the image tag is
UIImageView * currentImage = (UIImageView *)[self.view viewWithTag:1];