ios - Swift: Printing without alert box -
i use following codes printing in app:
init() { self.printinfo.outputtype = uiprintinfooutputtype.photo self.printinfo.orientation = uiprintinfoorientation.landscape self.printcontroller.printinfo = self.printinfo self.printer = uiprinter(url: url(string: printip)!) // printip string give internal ip of printer debugprint(printip) } func print(image: uiimage) -> bool { self.printcontroller.printingitem = image printcontroller.print(to: printer, completionhandler: {(controller, success, error) -> void in if success { debugprint("printing completed.") } else { debugprint("printing failed.") } }) return true }
it can print successfully. however, when function triggered, there alert box indicating contacting printer, , printing. there method avoid pop of alert box? want printing done @ without showing on screen interfere user experience (i want play movie when printer working @ back).
thanks.
from ios 8 there way print without presentation of printing ui. instead of presenting ui each time user presses print button, can provide way users select printer somewhere in app easy-to-use uiprinterpickercontroller. accepts optional uiprinter instance in constructor pre-selection, uses same presentation options explained above, , has completion handler when user has selected printer:
swift 3
let printerpicker = uiprinterpickercontroller(initiallyselectedprinter: savedprinter) printerpicker.present(animated: true) { (printerpicker, userdidselect, error) in if userdidselect { self.savedprinter = printerpicker.selectedprinter } }
now can tell uiprintinteractioncontroller print directly calling printtoprinter(:completionhandler:) saved printer instead of using 1 of present... methods.
Comments
Post a Comment