2013-07-22 5 views
0

UITextField에서 간단한 덧셈과 뺄셈을 시도합니다. 이 목적을 위해 두 개의 덧셈과 뺄셈을합니다. 뺄셈을위한 버튼은 그것이하는 일을하지만, 추가 버튼은 텍스트 필드의 값에 0.1을 더한다고 지정했지만 빼기도 수행합니다. 아무도 내가 여기서 잘못하고있는 것을 지적 할 수 있습니까?추가 및 조정 uitextfield

- (IBAction)decrementIncrementTemperatureValue:(UIButton *)sender 
{ 
    NSString *temperatureString = _temperatureValueInput.text; 
    float operator = [temperatureString floatValue]; 
    float result; 

    if (_temperatureDecrement) 
    { 
     result = (operator - 0.1); 
    } 
    if (_temperatureIncrement) 
    { 
     result = (operator + 0.1); 
    } 
    _temperatureValueInput.text = [NSString stringWithFormat:@"%f", result]; 
} 
+0

경우 _temperatureDecrement ND _temperatureIncrement 무엇인가? – Durgaprasad

+0

여기에 _temperatureDecrement 및 _temperatureIncrement에 대한 BOOL 값을 설정하는 중입니다 ... 자세한 정보를 제공 할 수 있습니까? – Dinakar

+0

태그 속성을 사용하고 sender.tag를 확인할 수 있습니다. – Kalpesh

답변

1

그렇지 않으면 태그 속성을 사용할 수 있으며, 블록 경우 복수의 장소에서 다른 사용 문

decrmentBtn.tag =0; 
incrementBtn.tag =1; 
- (IBAction)decrementIncrementTemperatureValue:(UIButton *)sender { 
NSString *temperatureString = _temperatureValueInput.text; 
float operator = [temperatureString floatValue]; 
float result; 

if (sender.tag==0) { 
    result = (operator - 0.1); 
} 
else if (sender.tag==1) { 
    result = (operator + 0.1); 
} 
_temperatureValueInput.text = [NSString stringWithFormat:@"%f", result]; 
} 
3

은 두 개의 버튼에 대한 _temperatureDecrement_temperatureIncrement 인스턴스 변수 있습니까?

일치하는 항목이 있다면 sender과 일치하는지 확인하려면 지금은 해당 항목이 0이 아닌지 확인하십시오.

if (sender == _temperatureDecrement) { 
    result = (operator - 0.1); 
} 
else if (sender == _temperatureIncrement) { 
    result = (operator + 0.1); 
} 
else { 
    // if you forgot to wire your two button variables to the UIButton objects 
    NSLog(@"sender (%@) is neither decrement nor increment button", sender); 
}