UIView圆形圆形视图过渡

时间:2013-09-02 11:01:14

标签: iphone objective-c uiview quartz-graphics uiviewanimationtransition

我在

中实现了循环过渡

animating UIView transitions like expand dot to circle

使用以下代码:

    -(IBAction)nextViewOpen
    {   
        NextViewVC *NextView= [self.storyboard instantiateViewControllerWithIdentifier:@"RBANextViewVC"];


        [NextView.view.layer setCornerRadius:25.0f];
        [NextView.view.layer setMasksToBounds:YES];
        NextView.view.frame=CGRectMake(100,120, 1, 1);
        [self.view addSubview:NextView.view];
        [self setRoundedView:NextView.view toDiameter:5];
        [UIView animateWithDuration:5.0 animations:^{

   ====== [self setRoundedView:NextView.view toDiameter:480]; ======

    }
                     completion:^(BOOL finished)
     {
         NextView.view.frame=CGRectMake(0, 0, 320, 480);
         NextView.view.layer.cornerRadius = 0;
     }
     ];
}



-(void)setRoundedView:(UIView *)roundedView toDiameter:(float)newSize;
{
    CGPoint saveCenter =roundedView.center;
    CGRect newFrame = CGRectMake(roundedView.frame.origin.x, roundedView.frame.origin.y, newSize, newSize);
    roundedView.frame = newFrame;
    //roundedView.layer.cornerRadius = newSize / 2.0;
    roundedView.layer.cornerRadius = roundedView.frame.size.width / 2.0;
    roundedView.center = saveCenter;
    roundedView.clipsToBounds = YES;
}

但它有一些问题

视图在动画过渡结束时获得完整的圆形,最初它没有完美的圆角

enter image description here enter image description here enter image description here enter image description here enter image description here enter image description here

0 个答案:

没有答案