@Test public void testNextSpanTransition() { final SpannableBuilder spannable = new SpannableBuilder(mClass, "abcde"); spannable.setSpan(mWatcher, 1, 2, Spanned.SPAN_INCLUSIVE_INCLUSIVE); final int start = spannable.nextSpanTransition(0, spannable.length(), mClass); assertEquals(1, start); }
@Override public int nextSpanTransition(int start, int limit, Class type) { if (isWatcher(type)) { type = WatcherWrapper.class; } return super.nextSpanTransition(start, limit, type); }
SpannableBuilder extends SpannableStringBuilder { @Override public int nextSpanTransition(int start, int limit, Class type) { if (isWatcher(type)) { type = WatcherWrapper.class; } return super.nextSpanTransition(start, limit, type); } }
SpannableBuilder extends SpannableStringBuilder { @Override public int nextSpanTransition(int start, int limit, Class type) { if (isWatcher(type)) { type = WatcherWrapper.class; } return super.nextSpanTransition(start, limit, type); } @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass); @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass, @NonNull CharSequence text); @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass, @NonNull CharSequence text, int start,
            int end); }
SpannableBuilder extends SpannableStringBuilder { @Override public int nextSpanTransition(int start, int limit, Class type) { if (isWatcher(type)) { type = WatcherWrapper.class; } return super.nextSpanTransition(start, limit, type); } @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass); @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass, @NonNull CharSequence text); @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass, @NonNull CharSequence text, int start,
            int end); @Override CharSequence subSequence(int start, int end); @Override void setSpan(Object what, int start, int end, int flags); @SuppressWarnings("unchecked") @Override T[] getSpans(int queryStart, int queryEnd, Class<T> kind); @Override void removeSpan(Object what); @Override int getSpanStart(Object tag); @Override int getSpanEnd(Object tag); @Override int getSpanFlags(Object tag); @Override int nextSpanTransition(int start, int limit, Class type); @RestrictTo(LIBRARY_GROUP) void beginBatchEdit(); @RestrictTo(LIBRARY_GROUP) void endBatchEdit(); @Override SpannableStringBuilder replace(int start, int end, CharSequence tb); @Override SpannableStringBuilder replace(int start, int end, CharSequence tb, int tbstart,
            int tbend); @Override SpannableStringBuilder insert(int where, CharSequence tb); @Override SpannableStringBuilder insert(int where, CharSequence tb, int start, int end); @Override SpannableStringBuilder delete(int start, int end); @Override SpannableStringBuilder append(CharSequence text); @Override SpannableStringBuilder append(char text); @Override SpannableStringBuilder append(CharSequence text, int start, int end); @Override SpannableStringBuilder append(CharSequence text, Object what, int flags); }
SpannableBuilder extends SpannableStringBuilder { @Override public int nextSpanTransition(int start, int limit, Class type) { if (isWatcher(type)) { type = WatcherWrapper.class; } return super.nextSpanTransition(start, limit, type); } @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass); @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass, @NonNull CharSequence text); @RestrictTo(LIBRARY_GROUP)  SpannableBuilder(@NonNull Class<?> watcherClass, @NonNull CharSequence text, int start,
            int end); @Override CharSequence subSequence(int start, int end); @Override void setSpan(Object what, int start, int end, int flags); @SuppressWarnings("unchecked") @Override T[] getSpans(int queryStart, int queryEnd, Class<T> kind); @Override void removeSpan(Object what); @Override int getSpanStart(Object tag); @Override int getSpanEnd(Object tag); @Override int getSpanFlags(Object tag); @Override int nextSpanTransition(int start, int limit, Class type); @RestrictTo(LIBRARY_GROUP) void beginBatchEdit(); @RestrictTo(LIBRARY_GROUP) void endBatchEdit(); @Override SpannableStringBuilder replace(int start, int end, CharSequence tb); @Override SpannableStringBuilder replace(int start, int end, CharSequence tb, int tbstart,
            int tbend); @Override SpannableStringBuilder insert(int where, CharSequence tb); @Override SpannableStringBuilder insert(int where, CharSequence tb, int start, int end); @Override SpannableStringBuilder delete(int start, int end); @Override SpannableStringBuilder append(CharSequence text); @Override SpannableStringBuilder append(char text); @Override SpannableStringBuilder append(CharSequence text, int start, int end); @Override SpannableStringBuilder append(CharSequence text, Object what, int flags);  }