2010-07-02 4 views
2

iPhone SDK에 약간의 문제가 있습니다. 내 xib, 4 UITextField에 4 개의 값이 있습니다. 여기에서 호스트 이름, 설명, 이름 및 포트를 삽입합니다.
포트는 NSNumber입니다. 텍스트 (UITextField)를 NSNumber으로 변환해야하지만 어떻게해야할지 모르겠다. 다음을 시도 :UITextField의 값을 NSNumber로 변환하려면 어떻게해야합니까?

NSNumber *temp = [[NSNumber alloc] initWithString:portTextField.text]; 
serverObj.port = temp; 

그러나 내 응용 프로그램이 충돌합니다. NSString (설명은 ecc.)이 없습니다.

답변

3

initWithString이라는 NSNumber 객체에 대한 메소드가 없습니다 (앱이 충돌하는 이유입니다).

6

는 그냥 'NSInteger'를 얻기 위해,있는 NSString의 'integerValue'방법을 사용 : 당신은 NSNumberFormatter의 방법 numberFromString를 사용해야합니다. 그런 다음 그것으로부터 NSNumber 객체를 생성 할 수 있습니다.

serverObj.port = [ NSNumber numberWithInteger: [ portTextField.text integerValue ] ]; 
+0

모두에게 감사드립니다. – Crowley

10
NSNumberFormatter * f = [[NSNumberFormatter alloc] init]; 
[f setNumberStyle:NSNumberFormatterDecimalStyle]; 
NSNumber * myNumber = [f numberFromString:textField.text]; 
[f release]; 

그리고 그 작업이 완수해야한다.

+0

그것은 작동, thx !! :) – Crowley

+0

체크 표시 버튼을 눌러 응답으로 표시하십시오. :) –

관련 문제