android xml中onclick无效的原因

本文探讨了在Android开发中遇到的一个常见问题:点击按钮时,注册的点击事件不触发。通过检查和调整代码,发现先前设置的OnClickListener冲突导致了问题。文章提供了具体的代码示例和解决方案。
摘要由CSDN通过智能技术生成
    <Button
        android:id="@+id/send"
        android:onClick="sendUDP"
        android:clickable="true"
        android:focusable="true"
        android:layout_marginTop="20dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="send"/>
    public synchronized void sendUDP(View view) {
        scheduledThreadPool = Executors.newScheduledThreadPool(5);
        scheduledThreadPool.scheduleAtFixedRate(new Runnable() {
            public void run() {
                try {
                    byte[] buf = "hello".getBytes();
                    DatagramSocket datagramSocket2 = new DatagramSocket();
                    DatagramPacket datagramPacket2 = new DatagramPacket(buf, buf.length, InetAddress.getLocalHost(), 12345);
                    datagramSocket2.send(datagramPacket2);
                } catch (IOException e1) {
                    //TODO Auto-generated catch block
                    e1.printStackTrace();
                }
            }
        }, 1, 1, TimeUnit.SECONDS);
    }

如上两段代码,点击button时,函数并不响应。

原因是先前写了button的onclicklistener方法,注释掉即可。

//        button.setOnClickListener(new View.OnClickListener() {
//            @Override
//            public void onClick(View view) {
//                //sendMessage();
//                //sendUDP("hello");
//            }
//        });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值