Расширение Apple FileProvider в приложении File удалить операцию копирования, дублирования из действия контекстного меню браузера документов

введите описание изображения здесь

Я хочу удалить операцию копирования, дублирования из действия контекстного меню браузера документов. В моем коде для класса FileProviderItem изменить свойство capabilities

class FileProviderItem: NSObject, NSFileProviderItem {

    var capabilities: NSFileProviderItemCapabilities {
        return allowsReading
    }
}

Используя приведенный выше код, я могу удалить операцию "Переместить", "Удалить" из действия контекстного меню браузера документов.

Есть ли способ удалить операцию копирования, дублирования из действия контекстного меню браузера документов?

1 ответ

Просто чтобы опубликовать то, что я сказал вам в комментариях, это поведение определяется пользовательским интерфейсом расширения поставщика файлов. При добавлении в приложение расширения провайдера файлов оно добавляет две цели в ваши цели приложения. Если вы не хотите использовать этот тип функциональности, просто удалите целевой объект расширения файлового провайдера из своего проекта.

Вот выдержка из Apple по интерфейсу расширения поставщика файлов:

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

https://developer.apple.com/documentation/fileproviderui

Пример того, как удалить файл провайдера UI

Другие вопросы по тегам