43 строки кода - это все, что нужно
Markdown - это, вероятно, самый простой способ редактировать и форматировать форматированный текст. Он также чрезвычайно популярен, и почти каждый знает, как им пользоваться.
Итак, хотите внедрить Markdown в свое приложение? Раньше это было… сложно. Вам нужно будет использовать сторонний анализатор Markdown, а затем отобразить результат в веб-представлении. Если вы хотели использовать его со SwiftUI, что ж, удачи в работе с UIViewRepresentable
.
Однако хорошие новости: на WWDC21 Apple выпустила SwiftUI 3 с поддержкой Markdown! Это одна из особенностей, которая не была заметна, но она также является одной из самых интересных. В этой статье мы создадим редактор Markdown всего из 43 строк кода.
Начнем с простого интерфейса:
В настоящее время мы можем вводить текст в поле Markdown, а текст хранится в markdownText
. Однако результат не меняется. Этого и следовало ожидать, потому что мы просто показываем Text(“Output goes here!”)
.
Итак, как нам отобразить markdownText
в текстовом поле вывода? Это просто использовать недавно выпущенный AttributedString
API. Подробнее об этом читайте в этой статье.
Мы будем использовать метод AttributedString
init(markdown:options:baseURL:)
для создания строки с атрибутами из Markdown. Добавьте это внизу ContentView
:
Этот метод принимает String
Markdown, а затем преобразует его в AttributedString
.
Теперь осталось только позвонить!
… И у нас есть редактор Markdown.
Вот краткая шпаргалка по Markdown:
- Курсив
*Italics*
- Полужирный
**Bold**
- Зачеркнутый
~Strikethrough~
- Код
`Code`
- Ссылка
[Link](https://apple.com)
И вы можете получить исходный код готового приложения здесь:
Заключение
Это было легко, правда? А сегодня только третий день WWDC21. Впереди еще много всего интересного.
Спасибо за прочтение!