2011-09-05 3 views
0

문자열을 데이터로 변환 한 다음 다른 데이터 필드에 데이터를 배치하는 코드를 함께 배치했습니다. 모든 것이 잘 작동하지만 나는이 프로그램을 실행하고 IB 액션과 버튼을 누릅니다 때이 코드가 포함경고/오류가 발생하는 이유는 무엇입니까?

스레드 1 : 프로그램 신호 수신 : "SIGABRT"

[InputData setStringValue:OutputString]; 

내가이 오류를 . 응용 프로그램을 종료

인해 캐치되지 않는 예외 'NSInvalidArgumentException', 이유에 :

그리고 엑스 코드의 맨 아래에있는 출력 영역에 나는이 메시지가 '- [NSConcreteMutableData하는 setStringValue :] : 인식 할 수없는 선택기 전송 인스턴스 0x62507e0 '

왜 이런 일이 발생합니까?

인스턴스 방법 -setStringValue '을 (를) 찾을 수 없습니다 (ID를 반환 형식 기본값)

무슨 일

, 나는 그 위에 보았다 그것은 작동합니다 것처럼 보인다 경고 나에게 그것을 알려줍니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 목표 -C를 가진 초보자.

감사합니다.

+0

InputData 란 무엇입니까? – jrturton

+0

InputData는 어떤 유형입니까? 그것은 setStringValue 메서드를 가지고 있습니까? – Saran

답변

1

NSData에는 setStringValue 메소드가 포함 된 카테고리가있는 것처럼 들립니다. 카테고리 구현 파일의 이름은 NSData-extras.m과 비슷할 것입니다. 파일이 Xcode에 추가되었는지 확인하십시오. (또한 Xcode에 이미 알려진 경우 대상 빌드의 일부입니다.)

+0

맞습니다. NSMutableData-AES.m입니다. 빌드 대상은 어떻게 만들 수 있습니까? 또는 그것이 맞습니까? –

+0

프로젝트 파일을 마우스 오른쪽 버튼으로 클릭하고 파일 추가를 선택하여 을 선택하십시오. 이 대화 상자에서는 파일을 연결할 대상을 선택할 수 있습니다. 선택을 단순하게 만드는 하나의 목표 만 가질 수 있습니다 (꽤 정상입니다). –

0

당신의 InputData 가정하면의 UITextField를해야합니다,이 시도 :

[InputData setText:OutputString]; 
+0

@Saran에게 감사 드려요.하지만 작동하지 않았습니다. 그것은 단지 다른 유형의 오류를주었습니다. –

2

당신의 InputData 객체가 하는 setStringValue 방법이없는 NSMutableData의 인스턴스 디버거에 따르면. 코드를 살펴보고 실제로 목표로 삼고있는 객체에서 메소드를 호출하는지 확인하십시오.

+0

그건 의미가 있지만, 현재 설정되어있는 방식이 제가 목표로 삼고 싶은 방법이라는 것을 압니다. –