Символ UIPrintInfo не найден в iOS <4.2 - PullRequest
2 голосов
/ 26 сентября 2011

Я хочу запустить функцию принтера в своем приложении для iPhone, которое отлично работает в iOS 4.2, но когда я попытаюсь запустить это приложение в iOS <4.2, оно выдаст мне ошибку </p>

dyld: Symbol not found: _OBJC_CLASS_$_UIPrintInfo

В чем может быть причина и как решить эту проблему?

Спасибо!

Ответы [ 2 ]

1 голос
/ 01 октября 2011

вы можете написать это

if (NSClassFromString (@ "UIPrintInfo")) {// Добавить кнопку печати}

в вашем коде, а также установить одинОтметьте в настройках проекта

-> build -> Other Linker Flags = -weak_framework и UIKit.

Тогда вы не получите никаких ошибок во время компиляции.Пожалуйста, позаботьтесь о том, чтобы в поле «Другие флаги компоновщика» первый флаг отображался как -weak_framework, а следующий - UIKit.

Надеюсь, это поможет вам.

1 голос
/ 26 сентября 2011

Вы не можете, UIPrintInfo доступен только в iOS 4.2 и выше.

Что вам нужно сделать, это проверить, доступна ли UIPrintInfo, и если это только так, добавьте кнопку, которая позволит пользователю печатать:

if (NSClassFromString(@"UIPrintInfo")) {
   // Add print button
}

Также слабая ссылка на UIKit: Перейдите в свой проект и выберите вкладку «Build Phases», здесь вы найдете список «link Binary With library». За UIKit.framework должно быть обязательное требование и его необходимо изменить на необязательное.

...