Iphone 使用AirPrint和UIPrintInteractionController的自定义打印选项
我已经成功地将打印功能添加到使用Iphone 使用AirPrint和UIPrintInteractionController的自定义打印选项,iphone,objective-c,cocoa-touch,airprint,Iphone,Objective C,Cocoa Touch,Airprint,我已经成功地将打印功能添加到使用UIPrintInteractionController类的iPad应用程序中。事情进展顺利,并且打印了一份标准文档 但是,在我的应用程序中,可以为打印作业定义几个BOOL属性。(打开某些功能、添加其他布局方案等) 用户如何使用UIPrintInteractionController显示/修改这些选项?完美的解决方案是在控制器中显示的UITableView中添加一对切换表视图单元格,但API似乎不允许这样做 编辑:这是我指的视图: 您可以尝试将UIPrintInt
UIPrintInteractionController
类的iPad应用程序中。事情进展顺利,并且打印了一份标准文档
但是,在我的应用程序中,可以为打印作业定义几个BOOL
属性。(打开某些功能、添加其他布局方案等)
用户如何使用UIPrintInteractionController
显示/修改这些选项?完美的解决方案是在控制器中显示的UITableView
中添加一对切换表视图单元格,但API似乎不允许这样做
编辑:这是我指的视图:
您可以尝试将UIPrintInteractionController子类化,在类引用中没有不可能的提示。看起来(到目前为止)最好的办法是将一个
委托分配给UIPrintInteractionController
,并让该委托实现该方法:
- (UIViewController *)printInteractionControllerParentViewController:(UIPrintInteractionController *)printInteractionController
如果委托返回UINavigationController
的实例,则可以从提供选项列表的UITableViewController
子类中推送它,而不是以模式显示
从UIPrintInteractionControllerDelegate
类参考:
如果返回的视图控制器
父项是导航控制器,如果不是,则以模式显示
使用printInteractionControllerParentViewController
,技巧是声明一个UINavigationController*aNav代码>在.h
中,然后在viewDidLoad
doaNav=[self-UINavigationController]代码>这将保存导航控制器
句柄(假设self是UITableViewController
带UINavigationController
设置ok)
然后在调用uiprinterinteraction
之后,执行aNav.topViewController.viw.backgroundColor=[UIColor redColor]
将uiprinterinteraction
背景色更改为红色
最后,在printInteractionControllerParentViewController
中执行返回aNav代码>
现在您已成功更改AirPrint ui的背景色
通过使用这个aNav
,你可以做很多事情。如果我做到了上面所说的,那么我还必须处理所有其他任务,对吗?