Android форматированный текст Mark Down - PullRequest
0 голосов
/ 14 ноября 2018

Я ищу библиотеку или оптимизированные примеры использования Выделите вниз, чтобы создать форматированный текст.

Например, что-то повернуть:

1 - * Жирный * -> Жирный

2 - _Italic_ -> Курсив

Длинный пример:

3 - _Hello_ * Мир * -> Привет Мир

и т. Д.

Я видел, как многие приложения используют его, например Discord, Whatsapp, Skype.

Я сделал нечто подобное, но я знаю, что это не оптимизировано и может привести к ошибкам во время выполнения.

Ответы [ 3 ]

0 голосов
/ 14 ноября 2018

Я думаю, вам нужно искать библиотеку, поддерживающую отметку вниз

  1. https://github.com/tiagohm/MarkdownView
  2. https://github.com/noties/Markwon
  3. https://github.com/IonicaBizau/medium-editor-markdown
0 голосов
/ 14 ноября 2018
SpannableStringBuilder str = new SpannableStringBuilder("Your awesome text");
str.setSpan(new android.text.style.StyleSpan(android.graphics.Typeface.BOLD), start_int, end_int, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
TextView tv=new TextView(context);
tv.setText(str);
0 голосов
/ 14 ноября 2018

Вам не нужна дополнительная библиотека ...

Просто взгляните на android.text.SpannableStringBuilder ...

Это позволит вам получить текстовые функции, такие как:

  • Сделать больше
  • Жирный
  • Подчеркивание
  • Курсив
  • Зачеркнутые
  • Цветной
  • 1021 * Выделенные *
  • Показывать как верхний индекс
  • Показывать как индекс
  • Показывать как ссылку
  • Сделайте это кликабельным.

Здесь у вас есть пример того, как применить стиль Bold к слову в TextView:

String text = "This is an example with a Bold word...";  

// Initialize a new SpannableStringBuilder instance
SpannableStringBuilder strb = new SpannableStringBuilder(text);

// Initialize a new StyleSpan to display bold text
StyleSpan bSpan = new StyleSpan(Typeface.BOLD);

// The index where to start applying the Bold Span
int idx = text.indexOf("Bold");

strb.setSpan(
                bSpan, // Span to add
                idx, // Start of the span
                idx + 4, // End of the span 
                Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
        );

// Display the spannable text to yourTextView
yourTextView.setText(ssBuilder);        
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...