fileMover(isPresented:file:onCompletion:)
Presents a system interface for allowing the user to move an existing file to a new location.
Declaration
nonisolated func fileMover(isPresented: Binding<Bool>, file: URL?, onCompletion: @escaping (Result<URL, any Error>) -> Void) -> some View
Parameters
- isPresented:
A binding to whether the interface should be shown.
- file:
The
URLof the file to be moved. - onCompletion:
A callback that will be invoked when the operation has has succeeded or failed. To access the received URLs, call
startAccessingSecurityScopedResource. When the access is no longer required, callstopAccessingSecurityScopedResource.- result
A
Resultindicating whether the operation succeeded or failed.
Discussion
In order for the interface to appear, both isPresented must be true and file must not be nil. When the operation is finished, isPresented will be set to false before onCompletion is called. If the user cancels the operation, isPresented will be set to false and onCompletion will not be called.