Я читал в документах для Spanned/Spannable для проекта, который я работа над. Я был озадачен определением и использованием пролетов, которые содержат MARK
и POINT
.
A MARK
, как представляется, определяется в Doc как "прикрепленный" к местоположению символа, тогда как POINT
определяется как "приклеенный" к символу. Таким образом, MARK
не будет перемещаться при изменении текста, а POINT
будет перемещаться с символом, который он "приклеил", когда текст будет изменен.
Эти определения, похоже, показывают, что MARK
является синонимом INCLUSIVE
и что POINT
является синонимом EXCLUSIVE
.
Однако это не так, поскольку ни SPAN_MARK_MARK
, ни SPAN_POINT_POINT
не являются синонимами либо SPAN_INCLUSIVE_INCLUSIVE
, либо SPAN_EXCLUSIVE_EXCLUSIVE
. Фактически, SPAN_INCLUSIVE_INCLUSIVE
совпадает с SPAN_MARK_POINT
, а SPAN_POINT_MARK
совпадает с SPAN_EXCLUSIVE_EXCLUSIVE
.
Мои вопросы следующие
-
Почему
SPAN_POINT_MARK
синонимSPAN_EXCLUSIVE_EXCLUSIVE
? и почемуSPAN_MARK_POINT
синонимомSPAN_INCLUSIVE_INCLUSIVE
? -
Почему не
SPAN_MARK_MARK
иSPAN_POINT_POINT
синонимичныSPAN_INCLUSIVE_INCLUSIVE
иSPAN_EXCLUSIVE_EXCLUSIVE
соответственно? -
Каковы истинные определения
MARK
иPOINT
в этом использовании?