0

コントローラーに UIView を追加し、そのビューに UIButton を追加しました。そのビューを水平方向にアニメーション化しているので、そのビューに追加されているため、そのビューとともにボタンも移動しますが、ユーザーがボタン(アニメーション化されている)に触れると、ボタンがアニメーション化されてすぐにダウンする必要があります。ビューの古いアニメーション (ボタンのスーパー ビュー) がアニメーションしている間に、このボタンのアニメーションを実行する必要があります。

私はそれをしましたが、ボタンのスーパービューのアニメーションが開始されると、そのビューの大きなアニメーションが開始されなくなるまで、ボタンは上下にアニメーション化されます。

ここにコードがあります

tempRabbit = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 360, 360)];
        tempView=[[UIView alloc]initWithFrame:CGRectMake(900, 0, 1024, 500)];
        UIImageView *temp=[[UIImageView alloc]initWithFrame:CGRectMake(0, 200, 360, 360)];
        UIButton *tempBtn=[UIButton buttonWithType:UIButtonTypeRoundedRect];
        [tempBtn setFrame:CGRectMake(0, 0, 360, 360)];
        [tempBtn addTarget:self action:@selector(rabbitTaped1) forControlEvents:UIControlEventTouchUpInside];
        [tempBtn setTitle:@"Show View" forState:UIControlStateNormal];


    NSArray *animationArray=[[NSArray alloc]init];
    animationArray=[NSArray arrayWithObjects:
                    [UIImage imageNamed:@"rabbit1.png"],
                    [UIImage imageNamed:@"rabbit2.png"],
                    [UIImage imageNamed:@"rabbit3.png"],
                    [UIImage imageNamed:@"rabbit4.png"],
                    [UIImage imageNamed:@"rabbit5.png"],
                    [UIImage imageNamed:@"rabbit6.png"],
                    [UIImage imageNamed:@"rabbit7.png"],
                    [UIImage imageNamed:@"rabbit8.png"],
                    [UIImage imageNamed:@"rabbit9.png"],
                    [UIImage imageNamed:@"rabbit10.png"],
                    [UIImage imageNamed:@"rabbit11.png"],
                    [UIImage imageNamed:@"rabbit12.png"],
                    [UIImage imageNamed:@"rabbit13.png"], nil];

    temp.animationImages=animationArray;
    temp.animationDuration=2;
    temp.animationRepeatCount=0;
    [temp startAnimating];

    //[tempRabbit addSubview:temp];
    [tempRabbit addSubview:tempBtn];
    [tempView addSubview:tempRabbit];
    [self.view addSubview:tempView];
4

0 に答える 0