我想构建一个基本的文本查看器应用程序,该应用程序可以为.c或.java或.py文件的代码着色,我之前尝试过文本颜色跨度,但这并不是最理想的方法。有任何线索吗?
示例:
将.c或.java文件加载到应用活动中
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="content"
android:host="*"
android:mimeType="text/plain"/>
<data
android:scheme="file"
android:host="*"
android:mimeType="text/plain"/>
</intent-filter>
这就是我给每组span(context,R.color.grey,"[/*]([^[/]]*)[*/]");
(Regx)着色的方式
private static void span(Context context, int color, String word) {
Matcher matcher = Pattern.compile(word).matcher(spannableString);
while (matcher.find()) {
spannableString.setSpan(new ForegroundColorSpan(context.getResources().getColor(color)), matcher.start(), matcher.end(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}