zoukankan      html  css  js  c++  java
  • 弹出菜单效果

    - (void)showPopoverAtPoint:(CGPoint)point inView:(UIView *)view withContentView:(UIView *)cView

    {

     //self为弹出内容cView的superview  

      self.boxFrame = cView.frame;

        self.contentView = cView;

        UIWindow *window = [UIApplication sharedApplication].keyWindow;

        if(!window) {

            window = [[UIApplication sharedApplication].windows objectAtIndex:0];

        }

        UIView *topView = window;//[[window subviews] objectAtIndex:0];

        

        CGPoint topPoint = [topView convertPoint:point fromView:view];

        CGRect topViewBounds = topView.bounds;

        _contentView.frame = _boxFrame;

        _contentView.hidden = NO;

        [self addSubview:_contentView];

        

        self.layer.anchorPoint = CGPointMake(topPoint.x / topViewBounds.size.width, topPoint.y / topViewBounds.size.height);

        self.frame = topViewBounds;

        [self setNeedsDisplay];

        

        [topView addSubview:self];

        UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapped:)];

        [self addGestureRecognizer:tap];

        self.userInteractionEnabled = YES;

        

      //第一步,透明+缩小

        self.alpha = 0.f;

        self.transform = CGAffineTransformMakeScale(0.1f, 0.1f);

        

        [UIView animateWithDuration:0.5f delay:0.f options:UIViewAnimationOptionCurveEaseInOut animations:^{

             //不透明,并且放大到比原来大小稍大

        self.alpha = 1.f;

            self.transform = CGAffineTransformMakeScale(1.05f, 1.05f);

        } completion:^(BOOL finished) {

            [UIView animateWithDuration:0.08f delay:0.f options:UIViewAnimationOptionCurveEaseInOut animations:^{

        //恢复大小到原大小

                self.transform = CGAffineTransformIdentity;

            } completion:nil];

        }];

    }

  • 相关阅读:
    Android之dialog
    android上下文菜单(ContextMenu)
    Android中Handler的使用2
    Intent 各种跳转 .
    Android之Adapter用法总结
    android之Menu 实例与详解
    android学习之FrameLayout
    Andriod: 在xml布局中使用自定义属性
    你软考了吗?
    菜鸟从零学习数据库(三)——存储过程
  • 原文地址:https://www.cnblogs.com/ldc529/p/3831009.html
Copyright © 2011-2022 走看看