Как правильно удалить компоненты из библиотеки Three20

#iphone #ios #uiview #three20

#iPhone #iOS #uiview #three20

Вопрос:

В настоящее время мне необходимо использовать «TTStyledTextLabel». Однако он очень тяжелый, поэтому я попытался попытаться удалить части, которые мне не нужны. Например, мне не нужны все материалы, связанные с фотографиями, контроллером просмотра и т. Д.

Я пытался сделать это двумя способами: один — изменить отдельные модули в xcode (например, удалить файлы), а затем добавить их в свой проект. Вторым было попытаться добавить отдельные файлы из 320 в мой проект. Однако второй вариант вышел из-под контроля очень быстро, поскольку он извлекает практически все файлы из библиотеки 320.

Есть ли способ сделать это более разумно? Например, я не слишком уверен в методе компиляции статической библиотеки XCode, поэтому я даже не уверен, правильно ли комментировать файлы и удалять их, например, из компонента Three20UI, а затем добавлять его в мой проект.

Любая помощь будет оценена!

Ответ №1:

Хорошо, после того, как я попробовал это разными способами, вот как я сделал свой.

Я начал с: 1) добавления всех файлов проекта из three20 в мой проект. я думаю, что есть 7 модулей до 320. 2) начните обрезку, удалив содержимое листа. Например, программы просмотра фотографий и т. Д. Убедитесь, что не удаляете некоторые неоднозначные вещи. если вы не знаете, что он делает, пока не удаляйте его. 3) как только вы решите, что сократили каждый из 320 проектов, начните рассматривать возможность удаления всего проекта.
4) В итоге я сначала удалил 320network, конечно, это сломает кучу вещей, компилятор сойдет с ума. Я просто просмотрел их и удалил один за другим — например, закомментировал код, который вызывает код 320network (все представления изображений имеют это для кэширования URL-адресов изображений). Иногда я комментирую целые методы, а иногда просто комментирую оскорбительную строку. на самом деле это не имеет значения, поскольку вы, скорее всего, также удалите это из proj. 5) Как только я смог удалить network, я также продолжил UINavigation one — затем сделайте то же самое — исправьте ошибки компиляции. 6) Медленно и осторожно повторите.

Мне нужно было использовать TTStyledTextLabel, и я думаю, что мне действительно повезло. В итоге у меня получилось 320 библиотек размером примерно до 1 мегабайт. У меня 320UI составляет около 100 КБ, а последний оставшийся модуль, который я не могу продолжить, — 320Style.

В любом случае, извините за неудачный процесс, но это то, что я сделал..

Комментарии:

1. Если вам нужно было просто стилизовать текст, посмотрите пример кода, который использует строки с атрибутом NS. Существует ряд небольших проектов. На данный момент Three20 является УСТАРЕВШИМ.

2. Я рассмотрел другие варианты. Однако все они предназначены только для английского языка. Я планирую поддерживать все языки, тогда код рисования завершается с ошибкой, поскольку они не обрабатывают откат шрифта. three20 — единственная библиотека, которую я нашел до сих пор, которая может обрабатывать все языки, смешанные или нет. Есть ли у вас пример, который работает с многоязычными nsатрибутируемыми строками?

3. Хм, это интересный поворот. Извините, я не уверен, что было бы, кроме как сказать, что CoreText очень мощный и должен быть в состоянии справиться с этим просто отлично…