为什么在滚动时丢失ListView
中的链接?从调试中可以明显看出,这些跨度不会在convertView
的TextView
上第二次添加。链接跨度从ListView的convertView丢失
下面是从适配器的getView
调用的一段代码。
...
String body = MyItemDetails.getBody(); // String to linkify
final Spannable spannable = MyCustomUri.addHashtagSpans(context, body);
viewHolder.textView.setText(spannable);
viewHolder.textView.setTextIsSelectable(true); // adds additional spans
viewHolder.textView.setMovementMethod(ArrowKeyMovementMethod.getInstance());
viewHolder.textView.setAutoLinkMask(Linkify.WEB_URLS);
...
MyCustomUri.addHashtagSpans()
与MyCustomSpan
创建SpannableString
与延伸URLSpan
。
问题是,当我在ListView
上下滚动链接丢失。而第一次打开屏幕时,屏幕设置正确。
现在我通过禁用convertView
重用:(任何想法做了一个肮脏的修复如何解决这个问题好?
请将您的完整代码发布到getView方法(如果您正在扩展CursorAdapter,则为bindView和newView)。 –