如何在文本视图中突出显示 Java 语法?

How to highlight Java syntax in a textview?

我知道这是一个老问题,但可用的答案对于 android 的较新版本无效或贬值。请提供适用于 Android 5.0 及更高版本的解决方案。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    TextView textView = findViewById(R.id.text);

    String javacode="import java.util.Scanner;\n" +
            "class Addigit\n" +
            "{\n" +
            "public static void main(String args[])\n" +
            "{\n" +
            "Scanner sc=new Scanner(System.in);\n" +
            "System.out.println(\"enter the no..\");\n" +
            "int n=sc.nextInt();\n" +
            "int fd=n%10;\n" +
            "int rd=n/10;\n" +
            "int sd=rd%10;\n" +
            "rd=rd/10;\n" +
            "int td=rd%10;\n" +
            "System.out.println((fd+sd+td));\n" +
            "}\n" +
            "}";

    textView.setText(javacode);
}

如何像 Whosebug 使用此 java 代码或类似于 Android studio 所做的那样突出显示语法。

尝试使用这个

String javacode="Your Java Code";
Pattern pattern = Pattern.compile("float"); //Java keyword
Matcher m = pattern.matcher(javacode);
SpannableString str = new SpannableString(javacode);
while (m.find()) {
str.setSpan(new BackgroundColorSpan(Color.YELLOW), m.start(), m.end()-1, 0);                       
}
textView.setText(str);