我正在尝试使用Spannable String来跨越String而不跨越数字。
<camel:route>
<camel:from uri="file://input/orders" />
<camel:setHeader headerName="FileNameWithoutExtension">
<camel:simple>${file:onlyname.noext}</camel:simple>
</camel:setHeader>
我想避免对数字进行任何更改,只是跨越字符。 有可能吗?
我的代码:
String s = "asd21da";
我用它来改变字符串的字体,但我试图避免改变数字字体。
答案 0 :(得分:0)
一种方法是设置每个字符的跨度,如果它不是数字:
SpannableString span = new SpannableString(s);
for (int i = 0; i < span.length(); i++) {
if (Character.isDigit(span.charAt(i)))
continue;
span.setSpan(new TypeFace("", Typeface.createFromAsset(context.getAssets(),
"fonts/font.ttf")), i, i+1, span.SPAN_INCLUSIVE_INCLUSIVE);
}