2009-12-10 2 views
0

기본 AppBundle에 넣을 수있는 "하위 번들"또는 "하위 패키지"에 리소스 데이터를 저장할 수 있는지 알고 싶습니다."하위 번들"에 리소스를 저장하고 있습니까?

Package1 :

사실, 나는 표준 계층 적 조직과 모두 같은 방식으로 구성되어 있습니다 "콘텐츠 패키지", 읽고, 플레이어의 종류 만들 싶습니다
을 -
index.txt가 - credits.txt
- 사진/
- Pic1.png
- Pic2.png
- 영화/
- intro.mov
- outro.mov

내 문제는 내 응용 프로그램 패키지에 계층 적 조직의 이익을 얻는 방법이 없다는 것입니다. 즉, "Folder1/index.txt"를 구분하는 방법을 모르겠습니다. "from"Folder2/index.txt "에서 파일의 내용을로드하려고 할 때"index.txt "식별자를 사용하기 때문에 ...

나는 사과하는 방식으로 누군가가 나를 도울 수 있기를 바랍니다. 불쌍한 내 영어,

건배,

답변

1

먼저 들어, 자원의 하위 디렉토리에 파일을 복사하고 있는지 확인하십시오. 이를 수행하는 한 가지 방법은 Package1을 "폴더 참조"로 추가하는 것입니다 (프로젝트에 추가 할 때 "그룹을 재귀 적으로 만듭니다"대신 "폴더 참조 만들기"를 선택하십시오). 이를 수행하는 또 다른 방법은 파일을 자원의 서브 디렉토리에 복사하는 새로운 Copy Files 빌드 조치를 작성하는 것입니다.

일단 완료하면 NSBundle의 -pathForResource:ofType:inDirectory:을 사용하여 원하는 특정 파일을 찾을 수 있습니다. 하위 번들을 만드는 데 어려움을 겪을 필요가 없습니다 (가능하지만 더 복잡합니다).

+0

이것이 실제로 작동합니까? 내 프로젝트의 하위 디렉토리에 이미지가있는 경우 응용 프로그램 번들의 "루트 디렉토리"에 추가된다는 사실을 발견했습니다. –

+0

예, 직접 사용합니다. 문제는 프로젝트에 하위 디렉토리가 있는지 여부가 아닙니다. 그것은 파일 복사 규칙에 넣은 것입니다. 거기에 디렉토리 참조를 넣으면 디렉토리를 만들고 채 웁니다. 그렇지 않으면 사물을 다른 디렉토리에 넣는 새로운 파일 복사 규칙을 만들 수 있습니다. 하지만 프로젝트의 하위 디렉토리에 물건을 넣을 수는 없습니다. 파일 복사 단계와 관련이 없습니다. –

관련 문제