Intereting Posts
Запись аудио в Google Glass Изменить размер шрифта для сообщения AlertDialog Создание карты андроида в intellij Есть ли простой способ получить уведомление об авторских правах, автоматически добавленное студией Android? VM Aborting: фатальный сигнал 6 (SIGABRT) при 0x00001247 (код = -6) Android / Java – Как создать соединение HTTPS? Отказ APK от Android с помощью java.lang.AssertionError: невозможно в java.lang.Enum Не удалось выполнить повторную установку из-за различных подписей приложений Извлечь числа из буквенной числовой строки с помощью андроида Утилита Android Android Transaction rollback? Что сообщение logcat: «E / MoreInfoHPW_ViewGroup (2905): Родительский взгляд не является TextView» означает? Получить всех друзей пользователя с помощью API-интерфейса Facebook – Android Как получать уведомления о каждом новом изображении, видимом в приложении галереи? Android, звуки уведомлений телефона, даже когда они молчат? Должен ли я проверять тихий режим? INSTALL_FAILED_NO_MATCHING_ABIS, как преодолеть

LeadingMarginSpan2 – как ограничить количество абзацев с краем

Я использую базовую и очень распространенную реализацию LeadingMarginSpan2 для обертывания текста вокруг изображения (так как это, кажется, самый простой способ и, пожалуйста, не предлагайте мне использовать WebView s на данный момент):

  public class MyLeadingMarginSpan2 implements LeadingMarginSpan.LeadingMarginSpan2 { private int margin; private int lines; public MyLeadingMarginSpan2(int lines, int margin) { this.margin = margin; this.lines = lines; } @Override public int getLeadingMargin(boolean first) { return first ? margin : 0; // <--- the issue is here } @Override public void drawLeadingMargin(Canvas c, Paint p, int x, int dir, int top, int baseline, int bottom, CharSequence text, int start, int end, boolean first, Layout layout) { } @Override public int getLeadingMarginLineCount() { return lines; } } 

Проблема заключается в том, что, как только абзац появляется в тексте, в эту строку указывается нежелательный запас. Я хочу ограничить количество раз, когда getLeadingMargin() возвращает фактическое поле в число строк, переданных внутри конструктора.

Я попытался подсчитать, сколько раз возвращалась эта маржа и сравнивала ее с количеством строк, однако это не сработало (в большинстве случаев маржа не применялась, в некоторых случаях она применялась к неправильному числу строк) ,

У кого-нибудь есть обходной путь для этой проблемы?

Solutions Collecting From Web of "LeadingMarginSpan2 – как ограничить количество абзацев с краем"