2015-04-06 3 views
0

В настоящее время я работаю над калькулятором, который использует пользовательский процент для расчета налога.Публичная декларация значения ползунка

Итак, я получил свой макет и основные функции. Проблема только в том, что когда я пытаюсь вызвать значение «процент», которое нужно использовать в калькуляторе, оно дает мне «Локальное объявление переменной процента». Кто-нибудь знает, есть ли в этом легкое решение?

Спасибо!

- (IBAction)sliderChanged:(UISlider *)sender { 
    NSUInteger percentage = (int)lroundf(sender.value); 
    self.sliderLabel.text = [NSString stringWithFormat:@"%d", percentage]; 
} 

-(void)logic:(int)type{ 
    if(type == 0){ // Equals 
     if(optopt == 1){ 
      stack = [NSString stringWithFormat:@"%f", [stack doubleValue]+result]; 
      btw = [NSString stringWithFormat:@"%f", [stack doubleValue]*percentage/100]; 
      totaal = [NSString stringWithFormat:@"%f", [stack doubleValue]+[btw doubleValue]]; 

     }else if(optopt == 2){ 
      stack = [NSString stringWithFormat:@"%f", [stack doubleValue]-result]; 
      btw = [NSString stringWithFormat:@"%f", [stack doubleValue]*percentage/100]; 
      totaal = [NSString stringWithFormat:@"%f", [stack doubleValue]+[btw doubleValue]]; 

     }else if(optopt == 3){ 
      stack = [NSString stringWithFormat:@"%f", [stack doubleValue]*result]; 
      btw = [NSString stringWithFormat:@"%f", [stack doubleValue]*percentage/100];   totaal = [NSString stringWithFormat:@"%f", [stack doubleValue]+[btw doubleValue]]; 

     }else if(optopt == 4){ 
      stack = [NSString stringWithFormat:@"%f", [stack doubleValue]/result]; 
      btw = [NSString stringWithFormat:@"%f", [stack doubleValue]*percentage/100]; 
      totaal = [NSString stringWithFormat:@"%f", [stack doubleValue]+[btw doubleValue]]; 

     } 

     [_subTotaalLabel setText: stack]; 
     [_btwLabel setText:btw]; 
     [_totaalLabel setText:totaal]; 
     [_opperator setText:@"="]; 

ответ

1

Ваша проблема, когда вы пытаетесь вызвать процентное значение, и вы уже использовали процент переменной в [stack doubleValue]*percentage/100];

и вы также можете использовать эту переменную в этом коде так дублированием имени процент .. вы должны изменить название в методе нажатия кнопки.

NSUInteger perct = (int)lroundf(sender.value); 
self.sliderLabel.text = [NSString stringWithFormat:@"%d", perct]; 
+0

Но если я изменю имя кнопки, то нажата переменная, как она получит значение из ползунка? Это главное; Я хочу использовать значение ползунка в уравнении. –

+0

@MartN вы меняете только нужно изменить Variable Name ваша проблема дублирует одно и то же имя .. в вас метод IBAction u может измениться ..see мое обновление –

+0

Он исправил локальную декларацию. Но теперь, как мне получить значение ползунка в логике void (уравнение)? –

Смежные вопросы