2013-08-08 3 views
1

У меня есть пример проекта с использованием используемой рамки Three20. пока он работает на xcode 4.4.1, он отлично работает. В этом же проекте во время работы на Xcode 4.5.2 и Xcode 4.6.2 я становлюсь ниже ошибки.Три20 не скомпилирован с Xcode 4.5.2 и Xcode 4.6.2

some of the errors are : 

/three20/src/Three20UI/Sources/UIViewAdditions.m 
/three20/src/Three20UI/Sources/UIViewAdditions.m:109:5: Unknown type name '_tapCount'; did you mean 'ItemCount'? 
/three20/src/Three20UI/Sources/UIViewAdditions.m:109:15: Expected identifier or '(' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:110:5: Use of undeclared identifier '_locationInWindow' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:111:5: Use of undeclared identifier '_previousLocationInWindow' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:113:43: Use of undeclared identifier '_locationInWindow' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:114:5: Use of undeclared identifier '_view'; did you mean 'view'? 
/three20/src/Three20UI/Sources/UIViewAdditions.m:115:5: Use of undeclared identifier '_window' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:116:5: Use of undeclared identifier '_phase' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:117:5: Use of undeclared identifier '_touchFlags' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:118:5: Use of undeclared identifier '_touchFlags' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:119:5: Use of undeclared identifier '_timestamp' 
/three20/src/Three20UI/Sources/UIViewAdditions.m:127:3: Use of undeclared identifier '_phase'; did you mean 'phase'? 
/three20/src/Three20UI/Sources/UIViewAdditions.m:128:3: Use of undeclared identifier '_timestamp' 

enter image description here

+0

Как раз в вопрос: откройте Xcode 4.4.1 и просмотрите заголовочный файл UITouch.h. Вы видите, что эти переменные объявлены там? Они не объявлены в заголовках iOS 6.1, поэтому я предполагаю, что они больше не доступны для использования (если они есть в файле UITouch.h в iOS 5.x, то это подтверждает мою теорию, но у меня нет доступа к ним). Эта структура была оставлена ​​2 года назад, поэтому я не знаю, почему вы хотите ее использовать. Этот класс также в значительной степени опирался на детали реализации, что прекрасно, если его активно поддерживают, но в остальном это просто рецепт для взлома. – borrrden

ответ

0

Если вы работаете в последнюю актуальную версию, вы, вероятно, DEBUG_TOUCH определены. Определите его, и ошибки должны исчезнуть.

Смежные вопросы