Dan_ry 2015-01-28 04:15 采纳率: 33.3%
浏览 3037
已采纳

TextView怎么设置多个监听?

想要实现一个功能,将一个TextView中的内容读出来,并且对里边的数字添加链接,点击数字可以弹出对话框询问是要发短信还是打电话,目前这一部分已经实现了,但是发现一个问题,就是点击TextView处链接以外的其它区域没有响应了,原本是要跳转到下一个界面的。
请教大神,怎么能给TextView设置多个监听?一个负责监听链接点击事件,另一个监听TextView中除链接之外的其它区域?
  • 写回答

4条回答 默认 最新

  • danielinbiti 2015-01-28 09:14
    关注

    试了一下下面这段代码,同时都能生效,响应没问题。不冲突

     private void initTextView(){
            SpannableString ss = new SpannableString("text4: Click here to dial the phone.");  
            ss.setSpan(new StyleSpan(Typeface.BOLD), 0, 6,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);  
            ss.setSpan(new URLSpan("tel:4158561312"), 13, 17,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);  
    
            TextView t4 = (TextView) findViewById(R.id.tvt_span);  
            t4.setText(ss);  
            t4.setMovementMethod(LinkMovementMethod.getInstance());  
            t4.setOnTouchListener(new View.OnTouchListener() {          
                @Override
                public boolean onTouch(View v, MotionEvent event) {
                    // TODO Auto-generated method stub
                    System.out.println("OnTouchListener");
                    return false;
                }
            });
        }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥30 Matlab打开默认名称带有/的光谱数据
  • ¥50 easyExcel模板 动态单元格合并列
  • ¥15 res.rows如何取值使用
  • ¥15 在odoo17开发环境中,怎么实现库存管理系统,或独立模块设计与AGV小车对接?开发方面应如何设计和开发?请详细解释MES或WMS在与AGV小车对接时需完成的设计和开发
  • ¥15 CSP算法实现EEG特征提取,哪一步错了?
  • ¥15 游戏盾如何溯源服务器真实ip?需要30个字。后面的字是凑数的
  • ¥15 vue3前端取消收藏的不会引用collectId
  • ¥15 delphi7 HMAC_SHA256方式加密
  • ¥15 关于#qt#的问题:我想实现qcustomplot完成坐标轴
  • ¥15 下列c语言代码为何输出了多余的空格