Я разрабатываю мобильное приложение, поддерживающее 3D Touch. Я хотел бы реализовать меню быстрого действия для некоторых элементов управления внутри приложения, например, приложение «Контакты». Я прилагаю скриншот для лучшего понимания.3D Touch Quick Actions внутри приложения iOS
ответ
Для добавления этих быстрых действий внутри приложения вы можете реализовать Peek and Pop
функциональность в вашем приложении.
Для интеграции Peek and Pop
вы можете следить за этим уроком tutplus.
https://code.tutsplus.com/tutorials/ios-9-an-introduction-to-3d-touch--cms-25115
Надежда, это помогает
Вы можете попробовать мою собственную библиотеку ActionsList, которая имеет тот же вид и чувствовать, как меню быстрого действия Apple.
У этого нет поддержки 3D Touch, но это может помочь вам представить тот же список действий, что и на скриншоте поставщика.
Сначала вы должны создать список.
Если вы хотите, чтобы представить его из UIButton
, UIBarButtonItem
из UITabBarItem
есть встроенные методы для создания списка:
// element is UIButton, UIBarButtonItem or UITabBarItem
let list = element.createActionsList()
В противном случае вы должны использовать ActionsListModel
структуру:
let list = ActionsListModel(senderView: viewThatInitiatedListPresenting,
sourceView: viewToPresentListFrom,
delegate: listDelegate)
Тогда добавить действия в список
list.add(action: ActionsListDefaultButtonModel(localizedTitle: "Create Alarm",
image: UIImage(named: "Alarm clock"),
action: { action in
// You can use action's list property to control it
// - To dismiss
action.list?.dismiss()
// - To update action appearance
action.appearance.//anything
// Do not forget to reload actions to apply changes
action.list?.reloadActions()
}))
После этого вы можете представить список
list.present()
// Save list or it will be deallocated and not reachable outside of the scope it was created in
self.list = list