在指定位置上一层创建View

创建了一个view,在(0, 0, 320, 100)位置显示。现在我想让这个view来自上一层,然后在给的位置设定。

试过:

CATransition *transition = [CATransition animation];
     transition.duration = 1.0;
     transition.type = kCATransitionFromTop; //choose your animation
     [bGView.layer addAnimation:transition forKey:nil];
     [self.view addSubview:bGView];

没有成功。

可以i调整view的框架。先添加view作为subView

 [self.view addSubview:bGView];

在屏幕可见范围外加一个框架:

bGView.frame = CGRectMake(0,-150,320,100);

然后激活动画,从上层处理:

[UIView animateWithDuration:2.0
                animations:^{ 
                    bGView.frame = CGRectMake(0,0,320,100);
                } 
                completion:^(BOOL finished){
                    ;
                }];

试试view block 动画:

[UIView animateWithDuration:0.7f animations:^{

        bGView.frame = CGRectMake(0.0f, 200.0f, 320.0f, 100.0f);//Some frame

}];