Перечислите принтеры в виде таблицы, которые подключены к одной сети.IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Перечислите принтеры в виде таблицы, которые подключены к одной сети.

Сообщение Anonymous »

Я создаю приложение с функцией печати фотографий, сканирования документов и печати документов, больших плакатов, копирования живого текста и печати, все работает как положено. Теперь я хочу зарегистрировать в UITableView принтеры, подключенные к одной сети. Ниже приведен мой код для принтера.

Код: Выделить всё

let printController = UIPrintInteractionController.shared

class PrinterManager: NSObject, UIPrintInteractionControllerDelegate, UIPrinterPickerControllerDelegate {

let printerPickerController = UIPrinterPickerController(initiallySelectedPrinter: nil)

static let shared = PrinterManager()
private var viewController: UIViewController?
var didFinishPrintingClosure: (() -> Void)?

private override init() {}

// Set the view controller when initializing the PrinterManager
func setViewController(_ viewController: UIViewController) {
self.viewController = viewController
self.printerPickerController.delegate = self
}
}
Это метод выбора принтера:

Код: Выделить всё

func selectPrinter(sender: UIView, successCompletion: @escaping (Bool) -> (), errorCompletion: @escaping (Bool) -> ()) {
DispatchQueue.main.async {
if UIDevice.current.userInterfaceIdiom == .pad {
self.printerPickerController.present(from: sender.frame, in: self.viewController?.view ?? UIView(), animated: true) { (PickerVC, success, error) in
if success && error == nil {
if let printerUrl = PickerVC.selectedPrinter?.url {
let printerUrlPersistent = printerUrl.absoluteString
AppConstants.selectedPrinter = PickerVC.selectedPrinter
AppConstants.printerNamePersistent = PickerVC.selectedPrinter?.displayName
AppConstants.printerUrlPersistent = printerUrlPersistent
successCompletion(true)
} else {
errorCompletion(true)
}
} else {
errorCompletion(true)
}
}
} else {
self.printerPickerController.present(animated: true) { PickerVC, success, error in
if let selectedPrinter = PickerVC.selectedPrinter {
if let printerUrl = selectedPrinter.url as? URL { // crash
let printerUrlPersistent = printerUrl.absoluteString
AppConstants.selectedPrinter = selectedPrinter
AppConstants.printerNamePersistent = selectedPrinter.displayName
AppConstants.printerUrlPersistent = printerUrlPersistent
successCompletion(true)
} else {
errorCompletion(true)
}
} else {
errorCompletion(true)
}
}
}
}
}
Заранее благодарим за любую помощь.

Подробнее здесь: https://stackoverflow.com/questions/782 ... me-network
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как определить, какие принтеры подключены с помощью WMI
    Anonymous » » в форуме C#
    0 Ответы
    19 Просмотры
    Последнее сообщение Anonymous
  • Отправка файла с одного устройства на другое. Оба устройства подключены к одной сети Wi-Fi.
    Anonymous » » в форуме Jquery
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Доступ к Python и перечислите файлы в сети, поделитесь с именем пользователя и паролем
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Другие принтеры работают медленно, если на одном принтере возникает ошибка печати.
    Гость » » в форуме C#
    0 Ответы
    28 Просмотры
    Последнее сообщение Гость
  • Красивые принтеры GDB в Almalinux 8
    Anonymous » » в форуме Linux
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous

Вернуться в «IOS»