[ios] Xcode 4 : UIView xib 만들기, 제대로 연결되지 않음

TableViewCell에 포함될 뷰가 포함 된 펜촉을 만들려고합니다. 인터페이스 및 구현 파일을 만들었 ResultCell.h으며 ResultCell.m. 재고, 즉시 사용 가능하며 코드 변경이 없습니다.

그런 다음 빈 XIB 파일을 만들고 UIView를 끌어 놓습니다. 그런 다음 파일 소유자를 클릭하고 유형을 ResultCell. 보기를 클릭하고 클래스도 ResultCell.

내가 가진 문제는 다음과 같습니다.

  1. 내가 살고있는 Assistant Editor보기를 ResultCell.h사용할 때 ResultCell.xib 파일을 볼 때 파일이 나타나지 않습니다. 자동을 클릭하고 파일을 선택하여 강제로로드해야합니다.
  2. 뷰에 레이블을 놓은 다음 Ctrl + 클릭하고 .h로 끌어서 콘센트를 만들면 다음 오류 메시지가 표시됩니다. ” 새 콘센트 연결을 삽입 할 수 없습니다. ResultCell이라는 클래스에 대한 정보를 찾을 수 없습니다. “

뷰를 만들고 다시 만들려고했지만 작동하지 않고 인내심을 잃기 시작했습니다. 어떤 도움이라도 대단히 감사하겠습니다!



답변

특정 문제에 대해서는 작동하지 않을 수 있지만 새로 생성 된 펜촉으로 작업 할 때 가끔 해당 오류가 발생합니다. 이전과 동일한 이름을 가진 펜촉과 뷰 컨트롤러를 삭제하고 다시 생성해도 문제가 해결되지 않았지만 Xcode를 다시 시작하면 해결되었습니다.


답변

오늘도 비슷한 상태가되었습니다. 매우 이상했습니다. 프로젝트에 이미 존재하는 ViewController 클래스에 XIB (신규 또는 기존)를 연결할 수 있었지만 새 ViewController를 만들 수 없었고 XIB에 제대로 연결하지 못했습니다. “보조”기능은 작동하지 않았고 IB- 헤더 파일 연결 기능도 작동하지 않았습니다.

프로젝트를 닫고 다시 열어도 문제가 해결되지 않았습니다.
XCode를 종료하고 다시 시작해도 문제가 해결되지 않았습니다.
새 프로젝트를 만들고 기능을 테스트하는 것이 잘 작동하여 어딘가에 캐시에 뭔가 손상된 것이 있다고 믿게되었습니다.

내 솔루션

  • 프로젝트를 닫습니다.
  • ~ / Library / Developer / XCode / DerivedData 폴더로 이동하여 작업중인 프로젝트를 참조하는 모든 하위 폴더를 제거합니다.
  • XCode에서 프로젝트를 엽니 다. 이제 문제가 해결되어야합니다.

덧붙여서, 전체 청소를 실행하는 것만으로는 문제가 해결되지 않는 것 같습니다. 파생 된 데이터를 폐기해야했습니다. 나는 내가 플레이하고 있던 git 게임 때문에이 위치에 들어갔을 것이라고 확신하지만, 이전 git 개정판으로 다시 전환해도 도움이되지 않았기 때문에 어떻게 빠져 나갈지 몰랐다. (그것은 또한 프로젝트 자체에서 추적되지 않은 무언가라는 큰 단서였습니다.)


답변

나는 방금이 문제가 있었고 Xcode를 다시 시작해도 문제가 해결되지 않았습니다. 프로젝트에서 클래스 파일을 제거한 다음 다시 추가하고 작동하기 시작했습니다.


답변

나는 똑같은 문제가 있었다. 그리고 나는 시도했다 :

  • Xcode 다시 시작
  • 파생 데이터 삭제
  • 그리고 더 많은

그 어느 것도 효과가 없었습니다. 나를 위해 일한 것은 단순히 다음과 같습니다.

  • 프로젝트에서 ‘의심스러운’클래스 파일을 제거합니다 (참조 만 제거합니까?)
  • 프로젝트에 다시 추가

그리고 끝났습니다!


답변

Xcode를 다시 시작해도 작동하지 않으면 새 .m 파일을 대상 멤버로 전환했다가 다시 전환하는 것이 작동 함을 발견했습니다.


답변

이것은 나를 도왔습니다.

  1. 프로젝트 파일 패널 (왼쪽)에서 깨진 xib 파일을 선택합니다.
  2. 편집기보기에서 파일 소유자 아이콘을 클릭하십시오.
  3. 속성 패널 (오른쪽)에서 세 번째 탭 (상단)을 선택합니다.
  4. “사용자 정의 클래스”지정

“패널”이 보이지 않으면 창의 오른쪽 상단을보고 적절한 “보기”버튼을 활성화하십시오. “보기”버튼이 보이지 않으면 오른쪽 상단의 캡슐 버튼을 클릭하십시오.


답변

.m 파일이 en.lproj 폴더로 이동 한 것을 확인했습니다.

Xcode에서 .m 파일을 삭제 (참조 전용)하고 en.lproj에서 .m을 이동했습니다. 다시 추가하면 문제가 해결됩니다.

걱정하지 마세요. 모든 연결이 복구됩니다.