как реализовать всплывающее окно для компонента «cocoa touch framework»?

Вопрос: Как реализовать (думаю, я имею в виду передовую практику IOS) модальное всплывающее окно в «какао сенсорной структуре»?

Предполагается, что это универсальное приложение, поэтому оно будет поддерживать как iPhone, так и iPad. Можно предположить, что раскадровка используется для основного приложения, использующего платформу сенсорного управления какао.

Например, лучше всего, чтобы компонент возвращал «пожалуйста, попросите пользователя предоставить информацию X, Y, Z основному приложению и его контроллеру представления, а затем используйте такой подход:

    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let controller = storyboard.instantiateViewController(withIdentifier: "EventPopover")
    controller.modalPresentationStyle = .popover
    self.present(controller, animated: true, completion: nil)

Это было бы сложно, и тогда приложение нужно было бы немного построить для используемого компонента (/framework), так что это казалось бы невозможным? Альтернативой может быть ручное создание всплывающего окна в компоненте, но вы не уверены, выиграете ли вы от передового подхода IOS, который поможет поддерживать iPad и iPhone в обычном всплывающем подходе?

Примером может быть, скажем, у вас есть пользовательский компонент карты, который вы хотите, чтобы пользователь мог добавить, но один аспект компонента заключается в том, что когда пользователь выбирает/удаляет булавку, вы хотите иметь возможность вызвать модальное диалоговое окно для попросите пользователя настроить имя для этого удаленного контакта.

(надеюсь, это имеет смысл)


person Greg    schedule 07.01.2017    source источник
comment
я использовал это для всплывающего окна: cocoapods.org/pods/Popover на iphone (поскольку всплывающее окно в соответствии с рекомендациями предназначен для айпадов). затем просто покажите xib внутри всплывающего окна. p.s. извините, если я не совсем отвечаю на ваш вопрос, потому что это звучит очень сложно и не так ясно. хотя я хотя бы попытался ответить..   -  person Tung Fam    schedule 08.01.2017
comment
@Tung спасибо за ответ   -  person Greg    schedule 08.01.2017


Ответы (1)


Я обнаружил, что использование механизма всплывающих окон UIViewController — это подход, отметив, что он будет отображать всплывающее окно для iPad, а для iPhone — использовать полноэкранный режим.

   let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let controller = storyboard.instantiateViewController(withIdentifier: "EventPopover")
    controller.modalPresentationStyle = .popover
    self.present(controller, animated: true, completion: nil)
person Greg    schedule 12.01.2017