텍스트 상자 항목에서 숫자를 가져 와서 문자열로 변환하고 길이를 가져 오려고합니다. (IE : 숫자에 LEN (someInteger) 수행).목표 C - 문자열의 수와 길이의 불일치
숫자가 0 또는 null 인 경우 일부 불일치가 발생하지만 제대로 작동 할 수있었습니다.
예 :
-(IBAction)update
{
// inputField is the number pad textbox
double myInput = [inputField.text doubleValue];
//
NSNumber *c = [NSNumber numberWithDouble:myInput];
NSString *myOutput = [c stringValue];
NSLog(@"Starting number (number) = %@", c);
NSLog(@"myOutput (string) = %@", myOutput);
NSLog(@"myOutput (length) = %d", ([myOutput length]));
}
숫자에 대한 문자열 변환이 정상적으로 작동합니다. 내가 가지고있는 문제는 길이가있는 것입니다. 특히 숫자 (또는 null)가 없을 때 그렇습니다.
나는 공의 "텍스트"(자리 표시 자 그냥 "여기에 번호를 입력합니다"라고)
이있는 XIB에 숫자 패드 텍스트 상자 항목이 먼저 텍스트 상자 "텍스트로 입력을 시작하면 "사라지고 빈 텍스트 상자로 시작합니다.
문제 1 - 텍스트 상자를 처음 입력하면 텍스트 상자에는 아무 것도 나타나지 않지만 NSLog는 출력 길이가 1 자 길이라고 말합니다.
시각적으로 텍스트 상자에는 아무 것도 없지만 [myOutput length]는 1 문자 길이를보고하기 때문에 문제가 발생합니다.
문제 2 - 숫자 입력을 시작하면 모든 것이 잘 진행되지만 텍스트 상자를 완전히 지운 지점으로 숫자를 제거하기 시작하면 문자가 1 자 길이로보고됩니다.
텍스트 상자에 아무것도 표시되지 않으면 어떻게 1 자 길이를 읽을 수 있습니까? 나는 그것이 "텍스트"(신원 검사원으로부터)이어야한다고 생각합니다.
요약.
숫자 패드 텍스트 상자 입력 필드가 있습니다. 항목을 업데이트 할 때마다 IBaction 업데이트 메소드가 호출됩니다.
처음 입력란에 숫자를 입력하면 시각적으로 입력란에 숫자가 표시되지 않지만 NSLog는 길이가 1 자 길이라고보고합니다.
숫자 입력을 시작한 다음 한 번에 하나씩 제거하기 시작하면 모든 숫자를 완전히 제거 할 때까지 길이를 1 자 길이로보고합니다.
두 경우 모두 NSLog는 0 길이를보고해야하지만 절대 그렇지 않습니다. 나는 [myOutput length] - 1을 시도했다. 그러나 이것은 나에게 이상한 결과를 준다.
이에 어떤 도움도 큰
감사 할 것이다.
오, 나는 그것을 시도하고 그것이 작동하는지 확인합니다. 고마워요! – zardon
그 덕분에 잘됐다! 고마워! – zardon