Android: внутренний Linkify не работает должным образом, и текст, изображения мерцают внутри ListView

Я включил свойство Linkify текстового представления следующим образом:

txtbox.setAutoLinkMask(Linkify.WEB_URLS);

Но когда присутствуют URL-адреса, подобные bit.ly (что очень часто встречается в настоящее время в таких сообщениях, как твиты), они не отображаются должным образом. Проблема в том, что "иногда" это удается, а иногда не удается... Другая проблема заключается в том, что если этот TextView является частью пользовательского представления для ListView, то до тех пор, пока я фактически не прокручиву список, ни один из URL-адресов не получит ссылку...

Другая проблема заключается в том, что если в ListView есть изображение, то при прокрутке списка можно увидеть другую загрузку изображения до того, как оно загрузит фактическое изображение. Я предполагаю, что это происходит из-за повторного использования представлений, но есть ли обходной путь для этого?

1 ответ

Но когда присутствуют URL-адреса, подобные bit.ly (что очень часто встречается в настоящее время в таких сообщениях, как твиты), они не отображаются должным образом.

Вы на самом деле не объясняете, что означает "не отображает их должным образом", поэтому трудно дать совет там. Все, что я могу сделать, это указать вам на проект, который использует android:autoLink="all"и я не получил комментариев от студентов или читателей о том, что определенные URL не работают.

Если вы добились успеха / потерпели неудачу, ссылка относится к тому, превращается ли она в ссылку или нет, может быть ошибка в алгоритме сопоставления с образцом Linkify. Запишите несколько ссылок, которые потерпели неудачу, и посмотрите, сможете ли вы найти общий шаблон (например, имеет некоторую причудливую пунктуацию).

если внутри ListView есть изображение, то при прокрутке списка я вижу загрузку другого изображения до того, как оно загружает фактическое изображение. Я предполагаю, что это происходит из-за повторного использования представлений, но есть ли обходной путь для этого?

Если вы заполняете свои изображения сразу, я не знаю, что вы получите этот эффект. Я вижу это, когда я загружаю изображения на основе работы в фоновом потоке (например, загружая изображения в кэш, затем обновляя ImageView). В этом случае нужно заменить изображение заполнителем в вашем адаптере, пока оно не будет готово.

Другие вопросы по тегам