FootSubView.m 3.59 KB
//
//  FootSubView.m
//  Lighting
//
//  Created by mac on 16/5/10.
//  Copyright © 2016年 上海勾芒科技有限公司. All rights reserved.
//

#import "FootSubView.h"

@implementation FootSubView
- (instancetype)initWithFrame:(CGRect)frame
{
    if (self = [super initWithFrame:frame]) {
    
        [self initdata];
        [self initSubView];
    }
    return self;
}

-(void)initdata
{
    NSString *imageName = [NSString stringWithFormat:@"backView" ];
    UIImage *image=[UIImage imageNamed:imageName];
    self.dataArray=[[NSMutableArray alloc]initWithObjects:image,image,image,nil];
    //    待接收
}
-(void)initSubView
{
    UIButton *button=[UIButton buttonWithType:UIButtonTypeCustom];
    button.frame=CGRectMake(30, 50, 60, 60);
    [button setBackgroundImage:[UIImage imageNamed:@"场景1"] forState:UIControlStateNormal];
    button.tag=200;
    [button addTarget:self action:@selector(footBtnDidSelected:) forControlEvents:UIControlEventTouchUpInside];
    [self addSubview:button];
    self.scrollView=[[UIScrollView alloc]initWithFrame:CGRectMake(100, 0, self.frame.size.width-100, self.frame.size.height)];
    // 禁用滚动条,只设置水平方向的滚动条即可,竖直方向的滚动范围是0,所以没必要设置
    self.scrollView.showsHorizontalScrollIndicator = NO;
     [self addSubview:self.scrollView];
    // contentSize的y值为0表示在垂直方向上不做滚动
    [self showSecenePicture];
    
}
-(void)showSecenePicture
{
     [self.scrollView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)];
    self.scrollView.contentSize = CGSizeMake((self.dataArray.count+1) * (100+10), 0);
    for (int i=0; i<self.dataArray.count; i++) {
        UIButton *button=[[UIButton alloc]initWithFrame:CGRectMake(i*(100+10), 30, 100, 100)];
        UIImage *image=[self.dataArray objectAtIndex:i];
        [button setImage:image forState:UIControlStateNormal];
        button.tag=100+i;
        [button addTarget:self action:@selector(clicked:) forControlEvents:UIControlEventTouchUpInside];
        UILongPressGestureRecognizer *longPressGR =
        [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(longPress:)];
        longPressGR.minimumPressDuration = 0.5;
        [button addGestureRecognizer:longPressGR];
        
        [self.scrollView addSubview:button];
    }

}
//单次点击 设置为背景色
-(void)clicked:(UIButton*)sender
{
    NSLog(@"%d",(sender.tag));
    if ([self.delegate respondsToSelector:@selector(resetSuperBackGroundImage:)]) {
        
        [self.delegate resetSuperBackGroundImage:sender.imageView.image];
    }

//    resetSuperBackGroundImage
}
//长按   删除已添加
-(void)longPress:(id)sender
{
    UILongPressGestureRecognizer *longPress=sender;
    if (longPress.state == UIGestureRecognizerStateBegan) {
        NSInteger index=longPress.view.tag-100;
        if (self.dataArray.count>index) {
            [self.dataArray removeObjectAtIndex:index];
            [self showSecenePicture];
        }

    }
    else {
        
    }
    
    

    NSLog(@"长按");
}
//回调
-(void)footBtnDidSelected:(UIButton *)sender
{
    if ([self.delegate respondsToSelector:@selector(buttonClick:withButton:)]) {
        
        [self.delegate buttonClick:sender.tag withButton:sender];
    }

}
-(void)addFootSubViewImage:(UIImage*)image
{
    [self.dataArray addObject:image];
    [self showSecenePicture];  //重新绘制图片数量
}
/*
// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
- (void)drawRect:(CGRect)rect {
    // Drawing code
}
*/

@end