ios中addtarget的用法_移动开发_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > 移动开发 > ios中addtarget的用法

ios中addtarget的用法

 2014/11/24 19:24:14  小毛驴  程序员俱乐部  我要评论(0)
  • 摘要:1.addtarget的。部分使用事件没有直接的操作方式,需要进行调用。就要用addTarget。-(void)setupCustomView{self.customView=[[CHViewalloc]init];self.customView.translatesAutoresizingMaskIntoConstraints=NO;[self.viewaddSubview:self.customView];NSDictionary*viewsDictionary=@
  • 标签:用法 iOS

class="p1"> 1.addtarget 的。部分使用事件没有直接的操作方式,需要进行调用。就要用addTarget。

- (void)setupCustomView {

    

    self.customView = [[CHView alloc] init];

    self.customView.translatesAutoresizingMaskIntoConstraints = NO;

    

    [self.view addSubview:self.customView];

    

    NSDictionary *viewsDictionary = @{ @"topLayoutGuide": self.topLayoutGuide,

                                       @"customView": self.customView

                                       };

    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[topLayoutGuide][customView]|"

                                                                      options:0

                                                                      metrics:nil

                                                                        views:viewsDictionary]];

    [self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[customView]|"

                                                                      options:0

                                                                      metrics:nil

                                                                        views:viewsDictionary]];

    

    [self setupSliders];

    [self updateColors];

    [self setupTargetActions];

}

 

- (void)setupSliders {

    

    self.customView.trackWidthSlider.maximumValue = 100.0;

    self.customView.gaugeWidthSlider.maximumValue = 100.0;

    self.customView.valueSlider.value = self.customView.gauge.value;

    self.customView.trackWidthSlider.value = self.customView.gauge.trackWidth;

    self.customView.gaugeWidthSlider.value = self.customView.gauge.gaugeWidth;

    self.customView.valueSliderLabel.text = [self formattedStringForFloatValue:(self.customView.gauge.value * 100)];

    self.customView.trackWidthSliderLabel.text = [self formattedStringForFloatValue:self.customView.gauge.trackWidth];

    self.customView.gaugeWidthSliderLabel.text = [self formattedStringForFloatValue:self.customView.gauge.gaugeWidth];

    self.customView.valueSlider.continuous = NO;

    self.customView.trackWidthSlider.continuous = NO;

    self.customView.gaugeWidthSlider.continuous = NO;

}

 

- (void)updateColors {

    

    self.customView.valueColorIndicatorView.backgroundColor = self.customView.gauge.textColor;

    self.customView.trackColorIndicatorView.backgroundColor = self.customView.gauge.trackTintColor;

    self.customView.gaugeColorIndicatorView.backgroundColor = self.customView.gauge.gaugeTintColor;

}

 

- (void)setupTargetActions {

    

    UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(changeState:)];

    [self.customView.gauge addGestureRecognizer:tapGestureRecognizer];

    

    [self.customView.gaugeStyleSwitch addTarget:self action:@selector(changeGuageStyle:) forControlEvents:UIControlEventValueChanged];

    [self.customView.valueSlider addTarget:self action:@selector(valueSliderChangedValue:) forControlEvents:UIControlEventValueChanged];

    [self.customView.trackWidthSlider addTarget:self action:@selector(trackWidthSliderChangedValue:) forControlEvents:UIControlEventValueChanged];

    [self.customView.gaugeWidthSlider addTarget:self action:@selector(gaugeWidthSliderChangedValue:) forControlEvents:UIControlEventValueChanged];

    

    tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(changeValueColor:)];

    [self.customView.valueColorIndicatorView addGestureRecognizer:tapGestureRecognizer];

    tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(changeTrackColor:)];

    [self.customView.trackColorIndicatorView addGestureRecognizer:tapGestureRecognizer];

    tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(changeGaugeColor:)];

    [self.customView.gaugeColorIndicatorView addGestureRecognizer:tapGestureRecognizer];

}

 

#pragma mark - Action Methods

 

- (void)changeState:(UITapGestureRecognizer *)tapGestureRecognizer {

    

    if (self.customView.gauge.state != CHCircleGaugeViewStateNA) {

        self.customView.gauge.state = CHCircleGaugeViewStateNA;

    } else {

        [self.customView.gauge setValue:self.customView.gauge.value animated:YES];

    }

}

发表评论
用户名: 匿名