В настоящее время я пытаюсь реализовать 3D-сенсор в своем собственном приложении. Приложение - это что-то вроде школьного планировщика, так что главный диспетчер представлений - это UITableViewController, есть некоторые уроки в представлении таблицы, и при нажатии на один из них появится segue и изменит активный контроллер представления на «Детальный контроль» '.swift. Все работает до сих пор. Но теперь я пытаюсь реализовать 3D-Touch, чтобы пользователь мог нажимать на «урок», чтобы получить предварительный просмотр конкретного урока. Моя первая попытка состояла в том, чтобы просто установить галочку в segue раскадровки. Он фактически показал предварительный просмотр, но я хочу добавить некоторые действия под предварительным просмотром и дать ему название. Поэтому я попытался реализовать протокол UIViewControllerPreviewingDelegate и создать свои пользовательские функции.Быстро как правильно переопределить функции 3D-Touch?
Но с этого момента я понятия не имею, как продолжить.
Мои функции:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.leftBarButtonItem = self.editButtonItem()
// .... Some other irrelevant stuff
registerForPreviewingWithDelegate(self, sourceView: view)
}
func previewingContext(previewingContext: UIViewControllerPreviewing, viewControllerForLocation location: CGPoint) -> UIViewController? {
if let indexPath = tableView.indexPathForRowAtPoint(location) {
//This will show the cell clearly and blur the rest of the screen for our peek.
previewingContext.sourceRect = tableView.rectForRowAtIndexPath(indexPath)
}
return nil
}
func previewingContext(previewingContext: UIViewControllerPreviewing, commitViewController viewControllerToCommit: UIViewController) {
presentViewController(viewControllerToCommit, animated: true, completion: nil)
}
override func previewActionItems() -> [UIPreviewActionItem] {
print("previewActionItems")
let action = UIPreviewAction(title: "Press Me!", style: .Default) { (action, viewController) in
print("I believe I can fly")
}
return [UIPreviewAction](arrayLiteral: action)
}
И мои занятия:
Начальный контроллер мнение MainTableViewController. Все функции, показанные выше, записываются в этом классе.
Более подробный контроллер просмотра - это подробный контрольный контролер.
Благодарим за ответ!
это хорошая идея, чтобы наблюдать за сеанс WWDC (ы) на тему – Wain
Да я знаю ... Но я просто хочу, чтобы получить ответ на свой вопрос прямо сейчас XD – dv02
Вы можете посмотреть на это [tutorial] (http://code.tutsplus.com/tutorials/ios-9-an-introduction-to-3d-touch--cms-25115). Там вы можете найти как программное, так и раскадровку на свой вопрос. – Ayazmon