2014-01-26 182 views
0

在我的Android應用程序中,我想創建文本鏈接,按鈕的行爲。可點擊超鏈接Android

enter image description here

我想要的鏈接完全一樣在HTML頁面中的超鏈接,但我希望他們能像Android這樣的工作按鈕被點擊時。

我該如何做到這一點?

(注意:Linkify不是我在這裏尋找的,我不想鏈接到網頁,我希望鏈接像普通按鈕一樣工作,SpannableString可能工作,但我不知道該怎麼做。 )

+0

看到ClickableSpan – pskink

回答

1

按照建議使用Clickable Span

http://developer.android.com/reference/android/text/style/ClickableSpan.html

String s ="Your text"; 
TextView tv = (TextView) findViewById(R.id.textView1); 
SpannableString ss= new SpannableString(s); 
ss.setSpan(new MyClickableSpan(s), 0, ss.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
ss.setSpan(newForegroundColorSpan(Color.Blue),0,ss.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
tv.setText(ss1); 
tv.setMovementMethod(LinkMovementMethod.getInstance()); 
class MyClickableSpan extends ClickableSpan{  
String clicked; 
public MyClickableSpan(String string) { 

    super(); 
    clicked =string; 
    } 

    public void onClick(View tv) { 
     Toast.makeText(getApplicationContext(), "Clicked Text",Toast.LENGTH_SHORT).show();  

    } 

    @Override 
    public void updateDrawState(TextPaint ds) { 
     ds.setUnderlineText(false); // set to false to remove underline 
    } 
    }