Открыть текст в Pages-Swift

В моем приложении Swift 2 пользователь создает строку текста через текстовое поле, а затем делится ею на другое приложение. Прямо сейчас, я могу сделать только текст в виде файла .txt, который не предоставляет возможность Open In Pages когда я открываю диалоговое окно общего доступа к системе. Как я могу сделать это так, чтобы у пользователя была возможность открыть свой введенный текст в качестве документа в Pages?

Должен ли я преобразовать текст в формат .docx или .pages? И если да, то как?

One Solution collect form web for “Открыть текст в Pages-Swift”

Хитрость заключается в том, чтобы сохранить файл локально как .txt-файл, а затем открыть его с помощью UIDocumentInteractionController . Вот полный пример кода:

 import UIKit class ViewController: UIViewController, UIDocumentInteractionControllerDelegate { var interactionController: UIDocumentInteractionController? func openInPages(body: String, title: String) throws { // create a file path in a temporary directory let fileName = "\(title).txt" let filePath = (NSTemporaryDirectory() as NSString).stringByAppendingPathComponent(fileName) // save the body to the file try body.writeToFile(filePath, atomically: true, encoding: NSUTF8StringEncoding) // for iPad to work the sheet must be presented from a bar item, retrieve it here as below or create an outlet of the Export bar button item. let barButtonItem = navigationItem.leftBarButtonItem! // present Open In menu interactionController = UIDocumentInteractionController(URL: NSURL(fileURLWithPath: filePath)) interactionController?.presentOptionsMenuFromBarButtonItem(barButtonItem, animated: true) } } 

Вызовите openInPages из любого места вашего кода (например, когда пользователь нажимает кнопку кнопки « Export ):

 openInPages("This will be the body of the new document", title: "SomeTitle") 

это результат

  • Перемещение камеры в Картах Google
  • Ошибка: CoreData: warning: Невозможно загрузить класс с именем '' для сущности 'Receipt'. Но класс удаляется
  • Как добавить searchBar с областью видимости в пределах NavigationBar, где navBar автоматически увеличивает свою высоту и показывает область видимости
  • Как настроить различные ограничения автоматической компоновки для разных размеров экрана
  • Переключение с задней камеры на переднюю камеру во время записи
  • Как сделать несколько цветных вкладок в swift 3
  • Почему HTTPBody запроса внутри подкласса NSURLProtocol всегда равен нулю?
  • EXC_BAD_ACCESS (код = 1, адрес = 0x0)
  • Изменение цвета панели навигации UIActivityViewController
  • построение для tvOS, но связывание в объектном файле, построенном для iOS, для архитектуры arm64
  • Как отправить localNotification в определенное время каждый день, даже если это время прошло?
  • Interesting Posts

    Изменение скорости анимации серии изображений

    Отслеживание активных пользователей для push-уведомлений с использованием Urban Airship

    NSURLCache и ETags

    Как сохранить сцену SpriteKit приостановленной, когда приложение станет активным?

    Как обнаружить, если пользователь установил приложение iOS в браузере – как пример сайта в сообщении

    Рассчитать продолжительность между датами ios в формате Years, months и date

    Запись и воспроизведение звука одновременно

    iOS TableView с пейджингом?

    Нечувствительный к регистру поиск в NSMutableDictionary

    UIWebView tel: делегат телефонной связи не призван на iPad (но он работает на iPhone)

    Будет ли хранилище основных данных NSInMemoryStoreType хранить весь график в памяти и, следовательно, сильно ограничено системной памятью?

    dispatch_group_notify не ждет одного dispatch_group_async

    Захват фотографий с определенным разрешением с помощью UIImagePickerController

    Как вызвать CGRectDivide в Swift?

    Преобразование даты ISO6801 в NSDate для отображения объектов RestKit

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.