相关疑难解决方法(0)

Android:可点击的TextView中的ClickableSpan

我有一个可以包含可点击链接的textview.单击其中一个链接时,我想开始一个活动.这样可以正常工作,但也可以单击整个文本视图并启动另一个活动.

这是我目前的解决方案:

    TextView tv = (TextView)findViewById(R.id.textview01);      
    Spannable span = Spannable.Factory.getInstance().newSpannable("test link span");   
    span.setSpan(new ClickableSpan() {  
        @Override
        public void onClick(View v) {  
            Log.d("main", "link clicked");
            Toast.makeText(Main.this, "link clicked", Toast.LENGTH_SHORT).show(); 
        } }, 5, 9, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    tv.setText(span); 

    tv.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            Log.d("main", "textview clicked");
            Toast.makeText(Main.this, "textview clicked", Toast.LENGTH_SHORT).show();               
        }
    });

    tv.setMovementMethod(LinkMovementMethod.getInstance());
Run Code Online (Sandbox Code Playgroud)

问题是,当我设置一个OnClickListener,每次我点击一个链接第一监听整个的TextView ,然后将一个用于ClickableSpan被调用.

当点击一个链接时,有没有办法防止android为整个textview调用监听器?或者在监听器中决定整个视图,是否单击了链接?

java android textview

40
推荐指数
4
解决办法
5万
查看次数

标签 统计

android ×1

java ×1

textview ×1