edit_recv_data = findViewById(R.id.editRecvData); // 接收数据框 view_can_send = findViewById(R.id.viewCanSend); // 发送数据区域 btn_fill_start = findViewById(R.id.btn_fill_start); // 发送寻北指令 btn_fill_stop = findViewById(R.id.btn_fill_stop); // 发送停止寻北指令 //保存原始的点击事件 View.OnClickListener originalListener = btn_fill_start.getCameraDistance(); btn_fill_start.setOnClickListener(view->{ // 开始寻北指令 sendData("0x8080020103EE"); //实现寻北跳转 btn_fill_start.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { Intent intent =null; intent =new Intent(XbyActivity.this,But_Noth_Record.class); startActivity(intent); } }); //返回时恢复原始点击事件 btn_fill_start.setOnClickListener(originalListener); // 清空寻北的显示数据 northDataMsg = guideDataMsg = ""; showRecvData("", false); // 清空进度条 setProgressValue(0); progressValue = 0; progressFlag = false; }); btn_fill_stop.setOnClickListener(view->{ // 结束寻北指令 sendData("0x8080020204EE"); // 进度条停止 progressFlag = false; });改错
时间: 2024-02-10 08:10:11 浏览: 61
这段代码有一处错误,即在获取原始点击事件时,使用了错误的方法 `getCameraDistance()`,应该使用 `getOnClickListener()` 方法获取原始点击事件。正确的代码如下:
```
edit_recv_data = findViewById(R.id.editRecvData); // 接收数据框
view_can_send = findViewById(R.id.viewCanSend); // 发送数据区域
btn_fill_start = findViewById(R.id.btn_fill_start); // 发送寻北指令
btn_fill_stop = findViewById(R.id.btn_fill_stop); // 发送停止寻北指令
// 保存原始的点击事件
View.OnClickListener originalListener = btn_fill_start.getOnClickListener();
btn_fill_start.setOnClickListener(view -> {
// 开始寻北指令
sendData("0x8080020103EE");
// 实现寻北跳转
btn_fill_start.setOnClickListener(view1 -> {
Intent intent = new Intent(XbyActivity.this, But_Noth_Record.class);
startActivity(intent);
});
// 返回时恢复原始点击事件
btn_fill_start.setOnClickListener(originalListener);
// 清空寻北的显示数据
northDataMsg = guideDataMsg = "";
showRecvData("", false);
// 清空进度条
setProgressValue(0);
progressValue = 0;
progressFlag = false;
});
btn_fill_stop.setOnClickListener(view -> {
// 结束寻北指令
sendData("0x8080020204EE");
// 进度条停止
progressFlag = false;
});
```
阅读全文