String aux = getInserzionista(offerta.getIdInserzionista());
sotto_titolo.setText("Offerta dal " + aux);
int inizio = 12;
int fine = 11+aux.length();
sotto_titolo.setMovementMethod(LinkMovementMethod.getInstance());
sotto_titolo.setText(sotto_titolo.getText().toString(),BufferType.SPANNABLE);
Spannable mySpannable = (Spannable) sotto_titolo.getText();
ClickableSpan myClickableSpan = new ClickableSpan() {
@Override
public void onClick(View widget) {
}
};
//if i put this, not work
mySpannable.setSpan(new ForegroundColorSpan(Color.RED), inizio, fine, 0);
mySpannable.setSpan(myClickableSpan, inizio, fine + 1,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
但是,如果我这样说:
mySpannable.setSpan(new ForegroundColorSpan(Color.RED), 0, 4, 0);
它有效,因为0到4的文字是彩色的!
所以,我的问题是:
如何更改链接的颜色(蓝色和带下划线的颜色)?
由于
答案 0 :(得分:1)
因为你在这一行设置了一个静态值4 mySpannable.setSpan(new ForegroundColorSpan(Color.RED),0,4,0);.设置文本长度代替4。
答案 1 :(得分:0)
您是否尝试过使用updateDrawState()?