弹出框PopupView的封装

类似于点击出现“气泡”的弹出框封装,支持大小、颜色、三角形位置等各种属性的定制,比较灵活,可以用系统frame初始化,也可以用构造方法初始化,相对没有很“死”,简单易用哈哈!.h代码如下,点击查看完整demo

效果截图如下:

这里写图片描述

这里写图片描述

#import <UIKit/UIKit.h>


typedef enum : NSUInteger {
    TriangleDicrectionUp,       // 向上,默认
    TriangleDicrectionLeft,     // 向左
    TriangleDicrectionDown,     // 向下
    TriangleDicrectionRight     // 向右
} TriangleDicrection;           // 三角形方向


@interface YRPopupView : UIView


/**
 构造方法

 @param point 三角形坐标
 @param size  大小

 @return 弹出框
 */
- (instancetype)initWithTrianglePoint:(CGPoint)point size:(CGSize)size;

/**
 实际界面(除去箭头的位置)
 */
@property (nonatomic,strong) UIView *realView;

/**
 三角形方向,默认ArrowDicrectionUp,向上
 */
@property (nonatomic,assign) TriangleDicrection triangleDicrection;

/**
 三角形边长,默认是10
 */
@property (nonatomic,assign) CGFloat triangleSide;


/**
 三角形位置的比例,默认是0.5
 */
@property (nonatomic,assign) CGFloat triangleSeatScale;


/**
 三角形坐标Point
 */
@property (nonatomic,assign) CGPoint trianglePoint;


/**
 弹出框倒角,默认是10
 */
@property (nonatomic,assign) CGFloat cornerRadius;


/**
 弹出框背景颜色,默认是白色
 */
@property (nonatomic,strong) UIColor *popupBackgroundColor;


/**
 弹出框大小
 */
@property (nonatomic,assign) CGSize size;


/**
 在蒙层上显示弹出框

 @param maskSuperView 蒙层父视图
 */
- (void)show:(UIView *)maskSuperView;


/**
 弹出框消失
 */
- (void)dismiss;


/**
 点击蒙层的时候,是否使弹出框消失
 */
@property (nonatomic,assign) BOOL dismissWhenClickMaskView;

/**
 是否需要蒙层,默认有
 */
@property (nonatomic,assign) BOOL haveMaskView;


/**
 蒙层透明度,默认是0.3
 */
@property (nonatomic,assign) CGFloat maskAlpha;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值