저는 여전히 변환기 응용 프로그램에서 작업 중이며 문제가 발생했습니다.UITextField를 연결하여 레이블을 업데이트하십시오.
텍스트 필드에서 모든 편집을 시도하면서 계산 코드를 트리거하는 동안 한 가지 일이 발생하지 않습니다. 이 기압 일어나는 것이다 : 나는 PickerWheel에서 뭔가를 변경할 때까지
계산이 실행되지 않습니다. 내가 코드를 처음 만들었던 것처럼 코드를 비난하지 않는 것.
이 문제를 해결하는 동안 친구로부터 도움을 받았고 작동하려면 다음 코드를 추가했습니다.
우선하는 .m의 beggining에
- (void)textFieldChanged:(UITextField *)textField
{
[self updateConversionLabel];
}
, 그리고 (나는 그것 두를 알고, 그게 아마 잘못,하지만 난 모두를 시험해보고 싶었다.)
-(IBAction)textFieldChanged:(UITextField *)textField;
-(void)textFieldChanged:(UITextField *)textField;
.H에서 다음 나는 오류가 인터페이스 빌더에있을 수 있습니다 생각
#pragma mark -
#pragma mark PickerView Delegate
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
[self updateConversionLabel];
}
- (void)updateConversionLabel
{
float convertFrom = [[_convertRates objectAtIndex:[picker selectedRowInComponent:0]] floatValue];
float convertTo = [[_convertRates objectAtIndex:[picker selectedRowInComponent:1]] floatValue];
float input = [inputText.text floatValue];
float to = convertTo;
float from = convertFrom;
float convertValue = input;
float relative = to/from;
float result = relative * convertValue;
NSString *convertFromName = [_convertFrom objectAtIndex:[picker selectedRowInComponent:0]];
NSString *convertToName = [_convertFrom objectAtIndex:[picker selectedRowInComponent:1]];
NSString *resultString = [[NSString alloc]initWithFormat:
@" %.4f %@",result, convertToName];
resultLabel.text = resultString;
NSString *formelString = [[NSString alloc]initWithFormat:
@" %.4f %@=", convertValue, convertFromName];
formelLabel.text = formelString;
}
, 그래서 여기에 연결입니다 다음과 같이
계산은 s
간단한 해결책이 있습니까? :)
label.text 값을 설정하기 전에 로그를 추가하면 콘솔에 해당 로그가 출력됩니까? – propstm
여기에 나온 경우 출력되지 않았습니다. NSString * resultString = [NSString alloc] initWithFormat : @ "% .4f % @", result, convertToName]; NSLog (@ "Test"); resultLabel.text = resultString; –
@propstm 그게 나쁜 징조입니까? : P –