Странная проблема макета на устройстве 3GS с iOS 4.2.1 - Скомпилировано с iOS 5 - PullRequest
5 голосов
/ 15 ноября 2011

У нас был странный отчет об ошибке от пользователя, который имеет iOS 4.2.1 на iPhone 3GS.Многие UITextLabels в приложении смещены в странных местах.Кто-нибудь еще сталкивался с этой проблемой.

Приложение правильно установлено на всех устройствах, на которых мы тестировали, и мы слышали об этой проблеме только от 2 пользователей из 100 000может быть связано с стилями Three20.

misaligned text

enter image description here

Ответы [ 2 ]

9 голосов
/ 05 декабря 2011

У нас точно такая же проблема с нашими макетами. Мы не используем Three20, хотя. Существует известная проблема при сборке с iOS 5.0 и запуске на iOS 4.2.1, которая приводит к неправильной инициализации CGRect при использовании оптимизированного кода. (т.е. скомпилирован с самым быстрым и наименьшим уровнем оптимизации), поэтому вы не увидите его при тестировании на отладочной версии, для которой обычно задано значение None.

Существует обходной путь, чтобы это исправить. Вам просто нужно добавить флаг компилятора для:

"OTHER_CFLAGS [arch = armv6]" = "-mno-thumb";

(Вы можете добавить это либо непосредственно в файл проекта, либо на вкладке настроек сборки проекта).

Пожалуйста, смотрите ветку форума Apple, объясняющую полную проблему:

https://devforums.apple.com/thread/122059?tstart=15

0 голосов
/ 16 ноября 2011

Спросите пользователей, взломано ли их устройство, и установили ли они какие-либо шрифты на своем устройстве.Или ваше приложение поставляется с новыми шрифтами?

У одного из них была точно такая же проблема как на Mac, так и на iOS, когда я добавил собственный шрифт, который заменил системный шрифт ... (на самом деле это был тот же шрифт, но ОСрисовал это по-другому)

...