【发布时间】:2019-05-03 23:51:58
【问题描述】:
选择单词以更改它们等等
以“make-their-vocal”为例,上面的代码将其分解为“make-”
我不希望我想要整个“make-their-vocal”,所以当进行更改时,我仍然可以稍后记住内存中所做的更改并进行比较。
所以基本上有什么方法可以使用中断迭代器或代码最多只按空格中断?
这里也有代码
TextView 定义View = (TextView) findViewById(R.id.et_MainText);
definitionView.setMovementMethod(LinkMovementMethod.getInstance());
definitionView.setText(definition, TextView.BufferType.SPANNABLE);
Spannable spans = (Spannable) definitionView.getText();
BreakIterator iterator = BreakIterator.getLineInstance(Locale.UK); // change this if you want word or what ever
iterator.setText(definition);
int start = iterator.first();
for (int end = iterator.next(); end != BreakIterator.DONE; start = end, end = iterator
.next()) {
String possibleWord = definition.substring(start, end);
if (Character.isLetterOrDigit(possibleWord.charAt(0)) ||checkPun(possibleWord.charAt(0)) ||checkSpace(possibleWord.charAt(0))) {
ClickableSpan clickSpan = getClickableSpan(possibleWord);
spans.setSpan(clickSpan, start, end,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//Log.d("ClickableSpan", "init: " + start +" "+ end);
}
}
【问题讨论】:
-
请不要发布您的代码图像或图像链接,因为图像不可搜索,一旦图像目标被删除,您就很难理解您的问题,请参阅meta.stackoverflow.com/questions/374700/… 了解更多信息.
标签: java android iterator break