美文网首页
iOS-创建一个Pop up window

iOS-创建一个Pop up window

作者: 不是谢志伟 | 来源:发表于2014-06-19 21:48 被阅读1267次

    最近的一个项目需要一个弹出窗口.

    效果如下:

    实现步骤:

    1. 新建一个view controller
    2. 新建一个.xib文件.
    1. .xib跟view controller建立连接.然后在viewDidLoad方法中加入以下代码:
    - (void)viewDidLoad
    {
        self.view.backgroundColor=[[UIColor blackColor] colorWithAlphaComponent:.6];
        self.popUpView.layer.cornerRadius = 5;
        self.popUpView.layer.shadowOpacity = 0.8;
        self.popUpView.layer.shadowOffset = CGSizeMake(0.0f, 0.0f);
        [super viewDidLoad];
        // Do any additional setup after loading the view from its nib.
    }
    

    4 实现pop up window的打开与关闭效果.代码比较简单易懂,就不做解释了.

    - (void)showAnimate
    {
        self.view.transform = CGAffineTransformMakeScale(1.3, 1.3);
        self.view.alpha = 0;
        [UIView animateWithDuration:.25 animations:^{
            self.view.alpha = 1;
            self.view.transform = CGAffineTransformMakeScale(1, 1);
        }]; 
    }
    
    - (void)removeAnimate
    {
        [UIView animateWithDuration:.25 animations:^{
            self.view.transform = CGAffineTransformMakeScale(1.3, 1.3);
            self.view.alpha = 0.0;
        } completion:^(BOOL finished) {
            if (finished) {
                [self.view removeFromSuperview];
            }
        }];
    }
    

    5 最后,由一个IBAction来触发弹出窗口的关闭动作(xib的close button与view controller建立连接即可).

    - (IBAction)closePopup:(id)sender {
        [self removeAnimate];
    }
    
    - (void)showInView:(UIView *)aView animated:(BOOL)animated
    {
        [aView addSubview:self.view];
        if (animated) {
            [self showAnimate];
        }
    }
    

    相关文章

      网友评论

          本文标题:iOS-创建一个Pop up window

          本文链接:https://www.haomeiwen.com/subject/gvkjtttx.html