Как включить подсветку синтаксиса для кода C в текстовом представлении на Android Studio? - PullRequest
0 голосов
/ 25 мая 2018

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

1 Ответ

0 голосов
/ 25 мая 2018

Если я правильно понял ваши требования, поправьте меня, если я ошибаюсь.Вам необходимо отобразить подсветку синтаксиса для фрагментов кода (язык c) в текстовом представлении, которое ваше уже выходящее приложение Play Store отображает только в черно-белом варианте.

Чтобы получить выделенный HTML-код фрагмента кода, вы можете использовать этот сайт , а затем вы можете получить HTML-код выделенного фрагмента кода из раздела HTML Code вышеуказанный связанный сайт.После чего у вас есть два варианта, чтобы показать его в приложении для Android.

  1. Использование TextView

    Используя Java, вы можете заполнить текстовое представление с помощьюследующий метод util

    <code>myTextView.setTextsetText(Html.fromHtml("<pre style='color:#000000;background:#ffffff;'><span style='color:#004a43; '>#</span><span style='color:#004a43; '>include </span><span style='color:#800000; '>&lt;</span><span style='color:#40015a; '>stdio.h</span><span style='color:#800000; '>></span>\n" +
            "<span style='color:#800000; font-weight:bold; '>int</span> <span style='color:#400000; '>main</span><span style='color:#808030; '>(</span><span style='color:#808030; '>)</span>\n" +
            "<span style='color:#800080; '>{</span>\n" +
            "   <span style='color:#696969; '>// printf() displays the string inside quotation</span>\n" +
            "   <span style='color:#603000; '>printf</span><span style='color:#808030; '>(</span><span style='color:#800000; '>\"</span><span style='color:#0000e6; '>Hello, World!</span><span style='color:#800000; '>\"</span><span style='color:#808030; '>)</span><span style='color:#800080; '>;</span>\n" +
            "   <span style='color:#800000; font-weight:bold; '>return</span> <span style='color:#008c00; '>0</span><span style='color:#800080; '>;</span>\n" +
            "<span style='color:#800080; '>}</span>\n" +
            "
    "));
  2. Использование WebViews Еще раз с помощью Java вы можете заполнить webView с помощью HTML-кода.Вы получили с вышеупомянутого сайта.

    <code>WebView webView  = (WebView) findViewById(R.id.webView);
    webView.loadData("<pre style=\"color:#000000;background:#ffffff;\"><span style=\"color:#004a43; \">#</span><span style=\"color:#004a43; \">include </span><span style=\"color:#800000; \">&lt;</span><span style=\"color:#40015a; \">stdio.h</span><span style=\"color:#800000; \">&gt;</span>\n" +
            "<span style=\"color:#800000; font-weight:bold; \">int</span> <span style=\"color:#400000; \">main</span><span style=\"color:#808030; \">(</span><span style=\"color:#808030; \">)</span>\n" +
            "<span style=\"color:#800080; \">{</span>\n" +
            "   <span style=\"color:#696969; \">// printf() displays the string inside quotation</span>\n" +
            "   <span style=\"color:#603000; \">printf</span><span style=\"color:#808030; \">(</span><span style=\"color:#800000; \">\"</span><span style=\"color:#0000e6; \">Hello, World!</span><span style=\"color:#800000; \">\"</span><span style=\"color:#808030; \">)</span><span style=\"color:#800080; \">;</span>\n" +
            "   <span style=\"color:#800000; font-weight:bold; \">return</span> <span style=\"color:#008c00; \">0</span><span style=\"color:#800080; \">;</span>\n" +
            "<span style=\"color:#800080; \">}</span>\n" +
            "
    "," text / html "," UTF-8 ");
...