Попытка настроить параметры печати iOS UIPrint

Я пытаюсь изменить параметры печати, которые появляются при использовании UIPrint.

UIPrintInteractionController *pic;
void (^completionHandler)(UIPrintInteractionController *, BOOL, NSError *) =
^(UIPrintInteractionController *printController, BOOL completed, NSError *error) {
  if (!completed && error) {
    NSLog(@"Printing could not complete because of error: %@", error);
  }
};

[pic presentAnimated:YES completionHandler:completionHandler];

Существует делегат, на который вы можете ответить:

- (UIViewController *)printInteractionControllerParentViewController:(UIPrintInteractionController *)printInteractionController

Если я верну из этого ноль, появится диалоговое окно. Если я верну контроллер представления контроллера представления навигации, то параметры печати не появятся. Понятия не имею почему.

По связанному с этим вопросу можно ли получить список принтеров, вообще не используя параметры печати, а затем распечатать на определенном принтере (тем самым избавляясь от необходимости отображать вид параметров принтера).


person boberetezeke    schedule 06.06.2012    source источник


Ответы (1)


Что касается изменения параметров, отображаемых в диалоговом окне, вы можете посмотреть [UIPrintInfo] объект. Вы в основном настраиваете этот объект, а затем применяете его к UIPrintInteractionController, используя свойство printInfo.

У меня нет особых советов по использованию навигационного контроллера в качестве родителя. Я делал это в прошлом без проблем. При установке для родителя значения nil системный диалог отображается как модальный. При настройке его на навигационный контроллер он скользит сбоку, как обычный вид. У меня нет никакого понимания, почему это не работает для вас. Извиняюсь!

Что касается печати без диалога, я просто ответил на тот же основной вопрос здесь:

печать iOS без отображения UIPrintInteractionController

person jbtrask    schedule 08.10.2014