Mac Catalyst - перетаскивание в неактивное окно
Приложение для iPad, которое принимает UIImage
объекты как перетаскиваемые объекты были построены для macOS через Catalyst в Xcode 11b6.
Когда я перетаскиваю изображения из Finder или Photos, я обнаруживаю, что мое приложение должно быть сначала размещено на переднем плане, чтобы принять перетаскивание.
Это работает.
- Передний план моего приложения.
- Перетащите изображение в приложение. Дроп принят.
Это не работает
- Фон моего приложения.
- Перетащите изображение в приложение. Обработчики сбрасывания не запускаются, сброс не принимается.
Ожидаемое поведение заключается в том, что контент можно перетаскивать в неактивное окно, как любое приложение Какао.
Я реализую UIDropInteractionDelegate
,
extension MyViewController: UIDropInteractionDelegate {
func dropInteraction(_ interaction: UIDropInteraction, canHandle session: UIDropSession) -> Bool {
return session.canLoadObjects(ofClass: UIImage.self)
}
func dropInteraction(_ interaction: UIDropInteraction, sessionDidUpdate session: UIDropSession) -> UIDropProposal {
//only want external app sessions
if session.localDragSession == nil {
return UIDropProposal(operation: .copy)
}
return UIDropProposal(operation: .cancel)
}
}
Это бета-версия Catalyst или какая-то дополнительная UIWindow
/UIScene
магия требуется?
0 ответов
Похоже, это была ошибка Catalina, которая была исправлена в одной из последних бета-версий. Я использую бета-версию 7, и этой проблемы больше нет.