2012-01-09 2 views
0

으로 변환하면 "Bad Reciever type 'NSIntegar"(일명'int ') 오류가 발생합니다.UITextField 태그를 문자열

NSString *tempTag = [((UITextField *)[self.dataSetDictionary objectForKey:key]).tag stringValue]; 

uitextfield의 태그를 문자열로 유형 변환하려고 시도합니다. 나는 [NSString stringWithFormat]을 사용할 수 있습니다. 왜 이런 식으로 작동하지 않는지 알 수 없습니다.

답변

2

tag은 NSInteger 데이터 형식의 UIView 개체 속성입니다. 메시지를 전달할 수는 없습니다. stringValueNSNumber에서 호출해야합니다. 당신이 일을해야하는 것은이 방법은 작업을 수행,

NSString *tempTag=(NSString*)[[NSNumber numberWithInt:[(UITextField*)[self.dataSetDictionary objectForKey:key] tag]] stringValue]; 
+0

이것은 나에게 "예기치 못한", "마지막에"라는 오류를줍니다. – Padin215

+0

@ Log139 아아프스가 실수를 저질렀습니다. 편집 한 것을 시도하십시오 – MadhavanRP

+0

하, 예, 그랬습니다. 실종 된 곳이 어디인지 알 수 없었습니다. 감사합니다. – Padin215

4

당신은이 방법이 작동하지 않습니다 이유

UITextField *textField = (UITextField *)[self.dataSetDictionary objectForKey:key]; 
NSString *tempTag = [NSString stringWithFormat:@"%d", textField.tag]; 

stringWithFormat: 그냥 알아낼 수 없습니다 사용해야합니다.

tag은 개체가 아니기 때문에 스칼라 정수입니다. stringValue과 같은 메시지를 비 개체에 보낼 수 없습니다.

+0

네 개체 수없는 것입니다. 나는 다른 방식으로 작동하지 않는 이유가 무엇인지 알아 내려고했습니다. – Padin215