想要在某个位置创建一个来自上部的视图

Posted

技术标签:

【中文标题】想要在某个位置创建一个来自上部的视图【英文标题】:Want create a View that come from upperside at some position 【发布时间】:2013-03-05 07:22:06 【问题描述】:

我创建了显示在位置(0, 0, 320, 100) 的视图。现在我想让这个视图来自上方并设置在给定的位置,我已经尝试过了。

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

但它对我不起作用。

【问题讨论】:

【参考方案1】:

您可以在动画块中调整视图的帧 首先将您的视图添加为子视图

     [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)
                    ;
                ];

【讨论】:

【参考方案2】:

一切正常。除了应该在superview中添加动画之外,它应该是这样的:

[self.view.layer addAnimation:transition forKey:nil];

【讨论】:

【参考方案3】:

您可以尝试查看块动画

[UIView animateWithDuration:0.7f animations:^

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

];

【讨论】:

以上是关于想要在某个位置创建一个来自上部的视图的主要内容,如果未能解决你的问题,请参考以下文章

Android:如何防止键盘在我的布局中向上推某个视图? [复制]

如何使用列表视图创建视频视图?安卓

SQL 视图(Views)

从底部向内滑动视图并模糊休息

SQL VIEW(视图)

mysql中,啥是视图,视图的作用是啥