Tôi đang phân lớp ClickableSpan để tùy chỉnh kiểu văn bản cho các liên kết trong TextView của tôi.TextView ClickableSpan kiểu dáng cho trạng thái nhấn
private static class LinkSpan extends ClickableSpan {
@Override
public void onClick(View widget) {
// code...
}
@Override
public void updateDrawState(TextPaint ds) {
super.updateDrawState(ds);
ds.setUnderlineText(false);
ds.setTypeface(Typeface.create(ds.getTypeface(), Typeface.BOLD));
ds.setColor(0xff336699);
}
}
Tôi muốn thay đổi kiểu khi ở trạng thái nhấn hoặc người dùng chạm vào liên kết. (như a:hover
trong css) nhưng tôi không thể tìm ra cách để có được trạng thái hiện tại trong updateDrawState
.
Có cách nào để xử lý việc này không? Nếu tôi không thể thay đổi kiểu văn bản, tôi muốn có thể thay đổi màu nền ít nhất.
EDIT như chỉ bằng một bình luận, bạn có thể tìm thấy câu trả lời ở Change the text color of a single ClickableSpan when pressed without affecting other ClickableSpans in the same TextView
Bạn có tìm thấy câu trả lời không? Làm thế nào bạn kết thúc việc này? – Ravi
Đối với bất cứ ai có thể giúp đỡ trong tương lai, hãy xem http://stackoverflow.com/a/20905824/1646326 –