我需要一个显示两个文本的文本视图 - 其中一个左对齐,另一个 - 右对齐。在阅读了有关跨度之后,我编写了以下代码:
private Spannable generateText(PageModel page) {
final DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(context);
final String pageNumber = page.getNumber() + " ";
final String string = pageNumber + dateFormat.format(new Date(page.getLastModified())) ;
Spannable spannable = Spannable.Factory.getInstance().newSpannable(string);
spannable.setSpan(new AlignmentSpan.Standard(Alignment.ALIGN_NORMAL), 0, pageNumber.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
spannable.setSpan(new AlignmentSpan.Standard(Alignment.ALIGN_OPPOSITE), pageNumber.length() + 1, string.length() - 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return spannable;
}
Spannable spannable = generateText(page);
textView.setText(spannable);
结果是两者都保持正常对齐。实际上,即使我使用中心对齐,也根本没有对齐。字符串部分的边界不会交叉,为什么它不起作用? 你知道为什么这不起作用吗?