2013-09-25 3 views
11

메인 Images.xcassets 파일 내부의 폴더로 가져온 이미지가 100 개인 프로젝트가 있습니다. 그런 다음 그래픽 디자이너의 이미지 67 개를 업데이트합니다. xcassets 폴더에 이미지 업데이트를 푸는 쉬운 방법이 있습니까?Xcode5 xcassets - 이미지를 대량 대체하는 방법은 무엇입니까?

Xcode에서 xcassets 파일을 열고, 변경된 이미지 각각에 대해 새 이미지를 작은 2x 또는 1x 상자로 드래그합니다. 67 번해야합니다. xcassets 폴더의 모든 이미지에는 고유 한 하위 폴더가 있기 때문에 Finder에서 파일을 드래그/드롭 할 수 없습니다 (예전 방식). 내 이미지에 xcassets 파일을 사용하지 않으면이 작업을 통해 파일을 쉽게 업데이트 할 수 있습니다. 그러나 xcassets는 "자산 관리를 훨씬 단순하게 만듭니다."

괜찮습니까 - 무엇이 없습니까?

+2

저는 xcassets를 사용하기 시작했는데, 좋지 않습니다. –

+0

생각해 보니 디자이너에게'* .xcassets' 폴더가 있습니다. 폴더의 구조를 수정하지 않고 수정 된 이미지로 다른 폴더를 반환 할 것을 기대합니다. 그렇지 않으면 스크립트를 사용하여이를 해결할 수 있습니다 (이미지 이름이 같은 경우) – nacho4d

답변

3

나는 당신이 아무것도 놓치고 있다고 생각하지 않습니다. 애셋 폴더는 단순히 생각하지 못합니다. 그들은 몇 가지 이점을 소개하지만 더 많은 결점이 있습니다.

예를 들어 이미지를 가져옵니다. 파일을 복제하는 Xcode없이 애셋을 통해 다른 iOS 버전에 대해 동일한 망막 및 망막 4 인치 시작 이미지를 설정할 수 없습니다. 다른 옵션이없는 것 같지만 bug reporter을 통해 개선 요청을 제출하고 희망 ...

+0

동의 함. 이전에는 2x 이미지를 모두 1x 또는 3x 2x로 크기를 조정하고 이름을 바꾸는 스크립트를 작성하기가 쉬웠습니다. 우리는 항상 가장 큰 크기를 '마스터'로 취급하고 이미지가 변경 될 때마다 스크립트를 실행했습니다. 관리가 쉽습니다. –

0

시작 이미지 및 앱 아이콘과 같은 이미지를 내 xcassets 파일 내의 별도 폴더에 저장하기 시작했습니다. 변화. 그런 다음 이미지를 다시 가져 오거나 새 이미지를 추가해야 할 때마다 별도의 폴더를 제외하고 기존 이미지를 삭제하고 모든 이미지를 다시 가져옵니다 (따로 보관 한 이미지 제외). 그것은 깔끔하게 작동하고 내 코드 또는 스토리 보드를 손상시키지 않습니다.

또는 Finder에서 드래그 앤 드롭 할 수 있습니다. Finder에서 .xcassets 폴더를 열고 이미지를 올바른 디렉토리/이미지 세트에 넣기 만하면됩니다. Xcode는 디렉토리 구조를 변경하고 과거와 마찬가지로 이미지가 동일한 파일 이름을 유지하면 파인더에서 파일을 덮어 쓸 수 있으며 Xcode가 업데이트됩니다. 이와 같은 간단한 변경을 위해 Xcode의 .xcassets 파일을 엉망으로 만들 필요는 없습니다. 그러나 각 이미지를 적절한 이미지 세트로 드래그하는 데 약간의 어려움이 있습니다. 스크립트는이 영역에서 작업을 훨씬 쉽게 할 수 있습니다. .

4

루비에 대한 필요가 없습니다, 당신은 (업데이트 된 이미지가)는 기원 폴더에있는 파일을 찾으려면이 쉘 스크립트를 실행 할 수 있습니다 대상 폴더 (.xcassets 폴더에 같은 이름을 가진 파일을 찾을 수) 업데이트 된 버전으로 덮어 씁니다. 위대한 작품!

find ORIGIN FOLDER PATH NAME -name '*.png' | while read f; do f2=$(find DESTINATION  FOLDER PATH -name "${f##*/}"); [[ $f2 ]] && cp "$f" "$f2"; done 
+0

위대한 작품! –

관련 문제