In my work, I have to add custom links (use custom tag) in each listview item. I met two problems and have searched by Google and stackoverflow, but no result... Here is the code segment and I process the tag with TagHandler.
TextView tv = (TextView)paramView.findViewById(R.id.tv_dynamics_desc);
tv.setClickable(true);
tv.setText(Html.fromHtml("<uc id=\"133\">This is a Uc link</uc>", null, this));
tv.setMovementMethod(LinkMovementMethod.getInstance());
The problem is how to get the attribute: id.
@Override
public void handleTag(boolean opening, String tag, Editable output, XMLReader xmlReader) {
if(tag.toLowerCase().startsWith("uc")) {
if (opening) {
//String id = xmlReader.getProperty( "id" ).toString();
//<=== to get the attribute, but failed with exception of no such property.
startClick(tag, output, xmlReader);
} else {
endClick(tag, output, xmlReader);
}
}
}
xmlReader.getProperty( "id" ).toString(); does not work here. Is there any way to get the attribute directly? the ansow is "yes". but I don't know now~! I met the same problem and i will save it and record it at here!