枚举

h文件

/**
 *  图片浏览器的样式
 */
typedef NS_ENUM(NSUInteger, XLPhotoBrowserStyle){
    /**
     *  长按图片弹出功能组件,底部一个PageControl
     */
    XLPhotoBrowserStylePageControl = 1,
    /**
     * 长按图片弹出功能组件,顶部一个索引UILabel
     */
    XLPhotoBrowserStyleIndexLabel = 2,
    /**
     * 没有功能组件,顶部一个索引UILabel,底部一个保存图片按钮
     */
    XLPhotoBrowserStyleSimple = 3
};

/**
 *  browser style
 */
@property (nonatomic , assign) XLPhotoBrowserStyle browserStyle;

m文件

- (void)setBrowserStyle:(XLPhotoBrowserStyle)browserStyle
{
    _browserStyle = browserStyle;
    [self setUpBrowserStyle];
}
- (void)setUpBrowserStyle
{
    switch (self.browserStyle) {
        case XLPhotoBrowserStylePageControl:
        {
            self.pageControl.hidden = NO;
            self.indexLabel.hidden = YES;
            self.saveButton.hidden = YES;
        }
            break;
        case XLPhotoBrowserStyleIndexLabel:
        {
            self.indexLabel.hidden = NO;
            self.pageControl.hidden = YES;
            self.saveButton.hidden = YES;
        }
            break;
        case XLPhotoBrowserStyleSimple:
        {
            self.indexLabel.hidden = NO;
            self.saveButton.hidden = NO;
            self.pageControl.hidden = YES;
        }
            break;
        default:
            break;
    }
}

ps:具体的使用是在模块里区分。有传值和直接赋属性的方式,但是直接赋属性最好要重写set方法:

- (void)setBrowserStyle:(XLPhotoBrowserStyle)browserStyle
{
    _browserStyle = browserStyle;
    [self setUpBrowserStyle];
}

你可能感兴趣的:(枚举)