2011-10-10 1 views
1

현재 "TTStyledTextLabel"을 사용해야합니다. 그러나 그것은 매우 무거워서 내가 필요없는 부분을 제거하려고 시도했습니다. 예를 들어, 나는 사진과 관련된 모든 것들을 보지 않아도되고, 콘트롤러 같은 것들을 볼 필요가 없다.Three20 라이브러리에서 구성 요소를 올바르게 제거하는 방법

나는 그것을 두 가지 방법으로 시도했다. 하나는 xcode에서 개별 모듈을 수정하는 것이다. 내 프로젝트에. 두 번째는 320에서 개별 프로젝트를 프로젝트에 추가하려고했습니다. 그러나 두 번째 옵션은 320 lib에서 거의 모든 파일을 가져 오기 때문에 매우 빨리 빠져 나왔습니다.

더 지능적인 방법이 있습니까? 예를 들어, XCode 정적 라이브러리 컴파일 방법으로는 확신 할 수 없으므로 파일을 주석 처리하고 Three20UI 구성 요소를 제거한 다음 내 프로젝트에 추가하는 것이 올바른 방법인지는 모르겠다.

도움이 될 것입니다.

답변

0

다른 여러 가지 방법으로 시도한 후, 여기에 제가 어떻게했는지 설명해 드리겠습니다.

시작 : 1) three20의 모든 프로젝트 파일을 프로젝트에 추가합니다. 나는 320에 7 개의 모듈이 있다고 생각한다. 2) 잎 재료를 제거하여 트리밍을 시작한다. 예를 들어 사진 뷰어 등. 은 모호한 부분을 제거하지 않도록합니다. 그것이 무엇인지 모르는 경우 아직 제거하지 마십시오. 3) 일단 320 개의 프로젝트를 각각 트리밍 한 다음 전체 프로젝트를 제거하기 시작합니다.
4) 나는 320network를 먼저 제거했다. 물론 이것은 많은 것들을 깨뜨릴 것이고, 컴파일러는 열매를 맺을 것이다. 난 그냥 그들을 통해 가서 하나씩 제거 - 320network 코드 (이미지보기를 모두 캐시 URL 이미지를 가지고이 전화 코드를 주석처럼). 때로는 전체 메서드를 주석 처리하거나 때로는 문제가되는 행을 주석 처리합니다. 당신이 proj에서 이것을 제거 할 가능성이 높기 때문에 정말로 중요하지 않습니다. 5) 네트워크를 제거 할 수있게되면 UINavigation도 함께 진행하고 컴파일 오류를 수정합니다. 6) 천천히 조심스럽게 반복하십시오.

나는 TTStyledTextLabel을 사용할 필요가 있었고, 나는 정말로 운이 좋았다고 생각한다. 나는 약 1 메가까지 총 320 개의 라이브러리 크기로 끝났다. 나는 320UI가 약 100kb이고, 내가 더 이상 내려갈 수없는 마지막 나머지 모듈은 320Style이다.

어쨌든, 짜증나 과정 미안하지만, 내가 무슨 짓을 ..

+0

당신은 단순히 NSAttributed 문자열을 사용하는 샘플 코드를 둘러보고, 텍스트 스타일 것으로 필요한 경우. 소규모 프로젝트가 많이 있습니다. 이 시점에서 Three20은 고대입니다. –

+0

다른 옵션을 살펴 보았습니다. 그러나 그들은 모두 영어로만 제공됩니다. 나는 모든 언어를 지원할 계획이며, 글꼴 추락을 처리하지 않기 때문에 그리기 코드가 실패합니다. three20은 내가 지금까지 발견 한 모든 언어를 혼합하거나 다룰 수있는 유일한 라이브러리입니다. 다국어 nsattributed 문자열을 사용하는 예제가 있습니까? –

+0

흠, 그것은 흥미로운 비꼬아입니다. 죄송 합니다만, CoreText가 매우 강력하다는 것을 제외하고는 무엇이 좋을지 모르겠지만 그걸 잘 처리 할 수 ​​있어야합니다 ... –